Increase or Decrease Evenly Calculator

Dividing leaves the remainder in a lump at the end of the row — up to k−1 stitches of it. This spreads them so no two gaps differ by one.

evenly across the row
stitches after — 0 to use the count

"Evenly across the row" is the instruction that isn't one

Every pattern says it. None of them say how, so everybody does the obvious thing: divide, work that many between each shaping, and let whatever is left over land at the end. On 100 stitches with 7 increases that gives 7 gaps of 14 — and then 2 stitches nobody knew what to do with, sitting in a lump against the edge where the shaping visibly stops.

Two stitches sounds like nothing. It is not bounded at two. The leftover is n mod k, so it can reach k−1 — and it genuinely gets there. Sweeping every stitch count from 20 to 300 against every shaping count from 2 to 30 turns up 59 stitches with 30 decreases, where the normal gap is 1 stitch and the leftover is 29. That is 29× the spacing, all in one place, on a row that was supposed to be even.

The fix is old and comes from somewhere else entirely: it is Bresenham's line algorithm, the routine that decides which pixels a sloped line lights up. Placing 7 shaping points along 100 stitches and drawing a line across a grid are the same problem, so gap i is ⌊(i+1)·n/k⌋ − ⌊i·n/k⌋. Across 15,219 combinations that always uses every stitch and never lets two gaps differ by more than one.

The same row, both ways

GapsLeft over
What the pattern implies 14, 14, 14, 14, 14, 14, 14 2 at the end
Spread properly 14, 14, 14, 15, 14, 14, 15 none

Note what the good row does not do: it does not put the two odd stitches together, and it does not put them at the end. They go where the arithmetic puts them, which is spaced out — and the result reads as even fabric rather than as six tidy repeats and then a shrug.

A decrease eats two stitches, and that changes the spacing

Worth knowing if you ever reuse an increase row's numbers for a decrease row, because they are not the same numbers. An increase works into one stitch and gives back two. A decrease consumes two and gives back one. So k decreases need 2k stitches of raw material, and they are spread across n − k positions rather than n.

Get that wrong and the row runs out early — you reach the end of your spacing plan with stitches still on the left needle, or worse, run short and fudge the last decrease. This tool accounts for it, and every generated row has been reconstructed stitch by stitch to confirm it consumes exactly the stitches it started with.

Using it on a real garment

  • Half a gap at each end, if the edges will be seen. This lays the row out starting with plain stitches, which suits a row worked in the round. Flat and seamed, you may prefer to move the first shaping in a couple of stitches so it does not land in the seam allowance.
  • Ribbing into stocking stitch is the classic case. A rib pulls in, so patterns increase across the last rib row — and that is exactly the row where a lump at the edge shows, because it sits right above the brim.
  • Do not spread across a shaped section. If the row also has raglan or side shaping, spread within each panel separately. Otherwise the even spacing walks across a seam line, which looks deliberate and is not.
  • Crochet works the same way. The arithmetic knows nothing about needles; substitute sc for k and it is the same row.

How to use

  1. Enter the stitches on the needle and how many to add or take away.
  2. Or give a target count and let it work out the direction.
  3. Copy the written row — it collapses into repeats where it can.
  4. Check the note showing what plain division would have left over.

Frequently asked questions

How do I increase evenly across a row?

Not by dividing, which is what the instruction implies. Gap i should be ⌊(i+1)·n/k⌋ − ⌊i·n/k⌋ — Bresenham's line algorithm, the same routine that decides which pixels a sloped line lights up. It uses every stitch and never lets two gaps differ by more than one.

What is wrong with just dividing?

The remainder has to go somewhere and it ends up in one place, usually the end of the row. That leftover is n mod k, so it can reach k−1 stitches. Sweeping every plausible row turns up 59 stitches with 30 decreases, where the normal gap is 1 stitch and the leftover is 29 — twenty-nine times the spacing, in one lump.

Is a couple of stitches at the end really visible?

On a rib-to-body transition, yes, because the shaping row sits right above the brim where the eye already is. The failure is not that the count is wrong — it is that the fabric reads as several tidy repeats and then a gap, which looks like a mistake rather than a design.

Why is decreasing spaced differently from increasing?

Because a decrease consumes two stitches and returns one, where an increase consumes one and returns two. So k decreases need 2k stitches of raw material and get spread across n−k positions rather than n. Reuse an increase row's spacing for a decrease row and you run out before the end.

Can I use this for crochet?

Yes — the arithmetic knows nothing about needles. Substitute single crochet for the knit stitches and the row is the same. The same distribution also handles evenly spaced buttonholes, eyelets, or anything else placed along a run of stitches.

Should the row start or end with a shaping?

It starts with plain stitches here, which suits working in the round. Flat and seamed, move the first shaping a stitch or two inwards so it does not disappear into the seam allowance — the spacing tolerates that far better than it tolerates a lump.

What if the row also has other shaping in it?

Spread within each panel separately. If a row carries raglan or side shaping as well, running one even distribution across the whole row walks the spacing across a seam line, which looks deliberate and is not what you meant.

Does this send anything anywhere?

No. Everything is calculated in your browser and nothing is stored or uploaded.

🔒 This tool runs entirely in your browser. Nothing you enter is uploaded, logged, or stored.