How these calculators work

Every figure this site publishes is produced by a small set of pure functions, and every one of those functions returns its own derivation rather than just a number — which is why the workings shown under a result cannot drift away from the result. This page sets out the formulas, the default allowances, and the assumptions each one rests on.

Screen print of a length of cloth laid flat, marked with a dashed cutting line and dimension arrows.

The principle

Curtain making has no single standard. A London workroom, a US drapery shop and a well-regarded sewing book will give three different heading allowances, and all three are defensible. A calculator that hides its assumptions and prints one number is therefore not being accurate — it is being confident about a choice it never told you it made.

So the rule here is: every assumption is a visible, editable input, and the arithmetic is on the page. If your workroom uses a 30 cm hem rather than 20 cm, change it and the answer changes. If you get a different figure from another site, the workings tell you which assumption differs.

A second rule follows from the first: the supporting text on every page is generated from the same functions. The worked example below is not typed out — it is the return value of the curtain calculation, rendered. A unit test pins those figures, so a change to the maths that contradicts the prose fails the build rather than shipping.

Rounding: always up, never to nearest

Every rounding step in every calculator rounds upward. This is deliberate and asymmetric, because the two errors are not equally bad. Buying 40 cm too much fabric costs a little and goes in the offcuts box. Buying 20 cm too little means returning for more from a dye lot that may have sold out — and a curtain made from two dye lots is a curtain you will notice for years.

The one place this needs care is float arithmetic. A measurement entered in inches converts to something like 2560.0000000009 mm, and a naive rounding step against a 320 mm pattern repeat would buy an entire extra repeat on the strength of a nanometre. Every rounding here treats a value within one micrometre of an exact multiple as exact.

Curtain fabric

Two independent quantities, multiplied at the end.

Across: how many widths

  1. Flat width each curtain must cover = (track + returns + overlap) × fullness ÷ number of curtains.
  2. Usable width from W joined widths = W × roll width − 2 × side hem − (W − 1) × 2 × seam allowance.
  3. Take the smallest whole W whose usable width reaches the requirement.

Note that side hems apply to the two outer edges only. The intuitive version — charging a side hem to every width — over-counts by roughly one hem per join. Interior edges are seams, and cost a seam allowance on each side of the join instead.

Solving per curtain and then multiplying by the number of curtains means a pair automatically takes an even number of widths, so both hang identically. A professional workroom may split one width down the middle to save fabric; the half-width option does that, and warns when it leaves an odd half over.

Down: how long each cut is

  1. Cut length = finished drop + heading allowance + hem allowance.
  2. On patterned fabric, round that up to a whole number of pattern repeats.
  3. Add one further repeat, so the first cut can be placed where you want it in the design.

Step 2 rounds up even when the cut misses a whole repeat by a millimetre, because every drop must begin at the same point in the pattern or the motifs will not align across the joins. Where that wastes most of a repeat on every cut, the calculator says so — lengthening the hem slightly will often absorb it rather than binning it.

Both halves are shared code rather than shared prose. The width solver in step 1 above is the same function the curtain fullness calculator runs, and the repeat rounding in step 2 is the same function behind the pattern repeat calculator — so a change to either rule changes all three pages at once, and none of them can quietly disagree with the others. The curtain lining figure uses that same width solver too, with the lining roll width and its own hems.

The worked example, generated

200 cm track, 220 cm drop, a pair of pencil-pleat curtains, 140 cm fabric, 2× fullness, 32 cm repeat.
StepWorkingResult
Flat fabric width needed, per curtain (200 cm track + 0 cm returns + 0 cm overlap) × 2 fullness ÷ 2 curtains 200 cm
Fabric widths per curtain 2 × 140 cm − 16 cm side hems − 3 cm seams = 261 cm usable 2 widths
Fullness you actually get 2 × 261 cm ÷ 200 cm of track 2.61×
Cut length before pattern matching 220 cm drop + 15 cm heading + 20 cm hem 255 cm
Cut length rounded to whole pattern repeats ⌈255 cm ÷ 32 cm⌉ = 8 repeats × 32 cm 256 cm
Total cuts to buy 2 widths × 2 curtains 4 cuts
Fabric for the cuts 4 × 256 cm 1024 cm
Pattern placement allowance one extra repeat, so the first cut can start where you want in the pattern 32 cm
Total fabric required cuts + placement + shrinkage 1056 cm
Buy, rounded up (nearest 10 cm) 1056 cm rounded up to the next 0.1 m 1060 cm

Cutting layouts

The cushion and upholstery calculators solve a different shape of problem: a list of pieces of different sizes, cut from one roll. Pieces are laid in rows across the width, and a row costs the length of the longest piece in it. The packing sorts the pieces widest first, puts each into the first row with room for it, and opens a new row when none has.

That is first-fit-decreasing shelf packing, and it is a heuristic rather than an optimal layout. Someone cutting with the cloth in front of them can beat it — by nesting a shaped piece into a corner, by taking a small panel from an offcut. What it will not do is under-order, which puts its error in the same direction as every rounding rule above. The calculators print the plan row by row so you can see where it is being wasteful and decide for yourself.

A panel wider than the roll is not automatically impossible. Where a seam is ordinary practice — down the centre of a sofa back, under a cushion — the piece is cut in parts, each paying its own seam allowance. Where it is not, as across the face of a cushion, the calculator refuses instead of printing a figure that hides a defect.

Default allowances

These are the middle of the range UK and European workrooms use. They are defaults, not standards, they vary by market, and every one is editable on the calculator.

HeadingHeading allowanceHemMinimum fullness
Pencil pleat 15 cm 20 cm 2×
Pinch pleat 20 cm 20 cm 2×
Eyelet 25 cm 20 cm 1.8×
Tab top 12 cm 20 cm 1.5×
Wave 15 cm 20 cm 2×

Side hems default to 8 cm per side, seams to 1.5 cm, lining to a 137 cm roll cut 2.5 cm shorter than the face fabric so it cannot show below the hem.

Cutting increments

Fabric is not sold continuously. The increment differs by region and by shop.

SettingIncrementMinimum cutWhere
Nearest 10 cm 0.1 m 0.5 m The usual cut for roll goods anywhere fabric is sold by the metre.
Nearest half metre 0.5 m 0.5 m Common for upholstery weights and wholesale bolts.
Whole metres 1 m 1 m Some mills and online sellers cut only in whole metres.
Nearest ⅛ yard 0.125 yd 0.25 yd The standard cut at a US quilting counter.
Nearest ¼ yard 0.25 yd 0.5 yd Common for general dress and home-furnishing fabrics in the US.
Exact requirement — — No rounding — useful when you are cutting from fabric you already own.

Units

All arithmetic happens in millimetres; units exist only where you type a number and where one is displayed. The conversions are exact by definition — one inch is exactly 25.4 mm and one yard is exactly 0.9144 m, agreed internationally in 1959 — so no conversion here introduces error of its own.

Nominal roll widths are a different matter. The trade labels the same cloth in both systems and rounds both labels, so "54 inch" and "140 cm" get used interchangeably despite being 2.84 cm apart.

Sold asAlso labelledExact
36 in 90 cm 91.44 cm
44 in 112 cm 111.76 cm
45 in 115 cm 114.3 cm
54 in 137 cm 137.16 cm
55 in 140 cm 139.7 cm
60 in 150 cm 152.4 cm
108 in 274 cm 274.32 cm

Two places where the trade rounds and we do not

⅝ inch is not 1.5 cm. It is 15.875 mm against 15 mm. Half the sewing world treats them as interchangeable, and on a single seam they are. The seam allowance calculator carries the exact values because the difference compounds: a garment with ten seamed edges sewn metric from an imperial pattern finishes nearly 9 mm narrower than it was drafted, and the error is perfectly consistent, so nothing about the finished piece points at its cause.

One ounce per square yard is 33.905747 g/m², not 33.9. An ounce is 28.349523125 g by definition and a square yard is 0.83612736 m², so the conversion factor is exact and there is no reason to use a rounded one. The same applies to momme, the silk unit, which is 4.3399 g/m² rather than the 4.34 usually quoted.

Where these figures come from

There are two kinds of number on this site, and it matters which is which.

Definitions, which are exact and are not opinions. The yard is 0.9144 metres exactly, and the inch one thirty-sixth of it, 25.4 mm exactly. That is the International Yard and Pound Agreement of 1959, announced by the US National Bureau of Standards as Refinement of Values for the Yard and the Pound and reprinted in the Federal Register of 1 July 1959 — the same values adopted by the national standards laboratories of the United Kingdom, Canada, Australia, New Zealand and South Africa, which is what makes them international rather than American. The same notice fixes the avoirdupois pound at 0.45359237 kg exactly, and the ounce is a sixteenth of it, 28.349523125 g. Fabric mass per unit area — what the trade calls GSM — is measured by the method in ISO 3801:1977, Textiles — Woven fabrics — Determination of mass per unit length and mass per unit area, which was last reviewed and confirmed as current in 2023. Every conversion here uses those exact values rather than the rounded ones in common circulation, for the reason set out just above.

Trade conventions, which are neither exact nor standards. Roll widths, heading allowances, hem depths, ready-made curtain sizes and cutting increments are none of them specified by anybody. They are what suppliers and workrooms in the UK and Europe commonly use, they vary by region and by supplier, and a figure that is right in one workroom is wrong in the next. That is precisely why every one of them is an input you can change rather than a constant buried in the code, and why a correction to one of them is the most useful mail this site gets.

What has been checked, and what that is worth. The curtain results have been run against published trade calculators in two markets and the comparison is recorded — see the next section. The tools are also cross-checked against each other: shared arithmetic is imported rather than copied, and a test asserts that a standalone tool and the calculator composing it cannot drift apart. Neither of those makes a figure correct on its own. What they do is make every difference between this site and another one an explained difference rather than an unexamined one.

Checked against other calculators

On 21 August 2026 every cross-check case was run through published calculators from two markets: two UK curtain suppliers for the metric cases, and a US drapery supplier for the imperial one. 11 comparisons across 3 sources. Every difference is accounted for below, and every one of them makes this site ask you to buy more cloth rather than less.

The figure that agreed everywhere was the cut length — the finished drop plus its allowances, rounded up to a whole number of pattern repeats. It matched to the centimetre on every case and every source, twice arriving there from a different raw length that happened to round into the same repeat. That is the part of the calculation most likely to spoil a job if it is wrong, and it is the part three independent calculators agree on.

The five differences, and which market each belongs to

1. We add one pattern repeat for placement. On patterned fabric the first cut can then be started anywhere in the design rather than wherever the roll happens to begin. None of the three sources does this. It is the single largest difference on a patterned job — a whole repeat, so 32 cm on a typical curtain fabric — and if you are happy to take the pattern where it falls, you can switch it off in the calculator.

2. We take side hems and seam allowances off the roll before working out how many widths you need. This is the one worth understanding, because it is the difference between two answers rather than a few centimetres. A 140 cm width with 8 cm side hems turned on the outer edges and 1.5 cm seams at each join is not 140 cm of usable curtain. Both UK calculators tested treat it as though it were. On the documented example that lets them fit a pair into three widths where we need four: their three widths are 420 cm of cloth for a curtain that must finish 400 cm wide, which leaves 20 cm for four side hems needing 32.

This is not a UK-versus-elsewhere difference so much as a shopping-versus-trade one. The US drapery supplier we checked deducts side hems from the roll exactly as we do, and arrives at the same width count on the same job.

3. We solve each curtain separately, in whole widths. Both UK sources round the total requirement instead, which lets a pair take one and a half widths a side — a real workroom practice, since a width can be split down the middle and a half joined to each curtain. Where that is how your maker works, set the calculator to half widths and it will agree with them.

4. We add returns and centre overlap to the span. The cloth that wraps back to the wall at each end, and the overlap where a pair crosses in the middle, are fabric you have to buy. The sources tested use the bare track width. At whole widths the rounding usually swallows the difference; at half widths it is often exactly what tips a curtain into another half width.

5. We round the total up to a cutting increment. A shop cutting to the nearest 10 cm cannot sell you 10.56 m. None of the sources does this, so their figure is what the curtains need and ours is what you will be sold.

Case by case

The comparison in full. "Ours" is computed on this page by the same function the calculator runs, and the recorded results come from the fixtures the test suite checks — so neither column can drift from what the site actually does.

Case Ours Compared with Their result
Documented example: 200cm track, 220cm drop, pair, 140cm fabric, 2x, 32cm repeat 10.56 m Pro Calculator UK
procalculator.co.uk/curtain-fabric-calculator/
10.24 m; 4 widths, cut length 256 cm
Direct Fabrics
direct-fabrics.co.uk/curtain-calculator
7.68 m; 3 widths, cut length 256 cm
Plain fabric, same window 10.2 m Pro Calculator UK
procalculator.co.uk/curtain-fabric-calculator/
9.88 m; 4 widths, cut length 247 cm
Direct Fabrics
direct-fabrics.co.uk/curtain-calculator
7.65 m; 3 widths, cut length 255 cm
Single narrow window, one panel, plain 3.7 m Pro Calculator UK
procalculator.co.uk/curtain-fabric-calculator/
3.54 m; 2 widths, cut length 177 cm
Direct Fabrics
direct-fabrics.co.uk/curtain-calculator
3.70 m; 2 widths, cut length 185 cm
Wide bay, eyelet heading, plain, track with returns 17.1 m Pro Calculator UK
procalculator.co.uk/curtain-fabric-calculator/
13.35 m; 5 widths, cut length 267 cm
Direct Fabrics
direct-fabrics.co.uk/curtain-calculator
13.75 m; 5 widths, cut length 275 cm
Large pattern repeat on a short drop 8.32 m Pro Calculator UK
procalculator.co.uk/curtain-fabric-calculator/
7.68 m; 4 widths, cut length 192 cm
Direct Fabrics
direct-fabrics.co.uk/curtain-calculator
5.76 m; 3 widths, cut length 192 cm
US drapery: 84in rod, 90in drop, pair, 54in fabric, 2x, 18in repeat 12½ yd OnlineFabricStore
onlinefabricstore.com/drapery-yardage-calculator.aspx
12 yards; 4 panels, cut length 108 in, 6 repeats

Two caveats about the sources themselves, both found in the course of the check and both worth knowing if you go and compare for yourself. One of the UK calculators multiplies its answer by the number of curtains after already covering the whole gathered width, so asking it for a pair returns twice what the pair needs; the figures recorded above are from its single-curtain mode, which is the correct one. The other refuses a pattern repeat of zero, so plain fabric was entered as a 1 cm repeat — arithmetically the same thing, and the probe that revealed its otherwise unpublished 35 cm allowance.

A fourth source, a US workroom supplier, declined automated requests and was left out rather than worked around.

Half-drop repeats

Where a design steps down half a repeat between adjacent widths instead of lining up straight across, it is a half drop, and the label says so. Set the match beside the pattern repeat and the curtain, blind and pattern repeat calculators cost it. The cut length does not change — every cut is still a whole number of repeats — and the job takes one half repeat more in total.

Half a repeat once, not once per width, and that is the part worth spelling out because the obvious reasoning gives the wrong answer. If you cut the widths in the order they will hang, every one after the first wastes half a repeat getting back to the right place in the design. A workroom does not cut them in that order. It cuts every odd width consecutively, all starting at the same point in the pattern, shifts the pattern once, then cuts every even width. One shift for the whole job, whether the window takes three widths or nine.

There is a second workroom method — cutting alternate widths A and B, with each cut rounded to a half repeat rather than a whole one — and it genuinely needs less cloth on almost every job. It is not what the figure above uses, and the reason is the one that governs every rounding decision here: the quantity has to be safe for whichever method the person cutting actually uses. Order to the cheaper method and hand the cloth to a workroom cutting odds and evens and you are short. So the calculators cost the method that covers both, and tell you what the other one would save, so you can ask your maker before ordering less.

Railroading

Turn the cloth ninety degrees and the arithmetic inverts. Instead of the drop running up the roll and widths joined side by side, the roll's width covers the drop and its length runs across the window — so there are no vertical joins at any width, and the quantity stops depending on how many widths the fullness needs. A curtain simply takes its own flat width plus two side hems.

The cap is the roll: the deepest drop you can railroad is the fabric width less the heading and hem allowances, less anything unusable. On a 300 cm roll, a 300 cm track at 2× fullness takes 10.2 m run vertically and 6.32 m railroaded — the same curtains, four cuts against two. Set the fabric direction on the calculator to cost it, and if the roll cannot cover the drop the calculator refuses rather than quietly falling back to a vertical layout, which would answer a question you did not ask.

Two things it will not do for you. A vertical pattern repeat cannot be matched once the cloth is turned — the repeat now runs across the window rather than down it — so nothing is matched and nothing is added for matching; railroading is for plain cloth, or for a fabric printed to be used this way round. And the lining is still costed running vertically, because lining comes narrower than face fabric and rarely covers a full drop across its width.

Where the fabric is wide enough and it would genuinely save, the vertical calculation says so and quotes the figure. It used to suggest railroading on width alone, above 270 cm, which could recommend a layout that would not fit the curtain.

Selvedge and unusable width

A roll sold as 140 cm does not always give 140 cm of cloth you can cut. The selvedge down each edge is often stiffer than the rest, sometimes printed with the maker's name, and usually trimmed away; a flaw can run down one edge; a washable natural can lose width in a pre-wash. The curtain and blind calculators take an unusable width and deduct it from every width before working out how many you need.

From every width, which is the difference between this and the side hem allowance beside it: every width on the roll has two selvedges, while the side hems are turned on the two outer edges of a pair however many widths it takes. Deducting it usually changes nothing, because most jobs have slack between the cloth a curtain needs and the cloth the widths give. Near a boundary it changes everything: on a 250 cm track at 2× on 140 cm cloth, trimming 8 cm tips the job from two widths a side to three, and from 10.6 m to 15.7 m.

It is an input rather than an assumption because it is a property of the roll in front of you. The default is zero — the roll as sold — so nothing changes for anyone who does not set it.

Roman blind folds

Where the rods go on a Roman blind is not a matter of taste, and it is not arithmetic anybody has to invent: the drop divides into an odd number of equal sections. The bottom section hangs flat and never folds. Every pair above it folds over a rod — so a fold you see when the blind is stacked is two sections deep, and the flat bottom is half a fold.

That last point is the one every published guide opens by warning about, because getting it wrong is what makes a blind's bottom edge hang past its first pleat. Space the rods equally and the bottom section is a whole fold deep when it should be half.

So the number of rod pockets is (sections − 1) ÷ 2, and each rod sits at an odd multiple of the section depth, measured up from the bottom edge of the finished blind. The blind calculator gives both. Two published methods were compared before this was built and they turned out to describe the same geometry: one divides the whole drop, the other deducts the headrail first and gives the difference to the top section, which makes its sections slightly shallower on the same blind. The calculator uses the first, and the function behind it takes the headrail deduction as an argument so the second is a parameter rather than a rewrite.

What is deliberately not modelled

Each of these is a term with a settled trade meaning; the glossary defines them, and this section says what this site does about them.

Found a result you disagree with?

Every calculator has a "Report a wrong result" link that opens an email pre-filled with the exact calculation, because the URL encodes every input. That makes a disagreement reproducible, which is the only kind worth having. Each tool also carries a method version number beside its date, so a figure from one month can be told apart from a figure from the next.