ForHosting KIT · Science

Bulb spacing calculator

Know how many bulbs to buy before you dig: a bed 120 by 60 with a gap of 15 takes 9 bulbs per row in 5 rows, 45 in total, evenly spaced at 15. Use one length unit for every measurement. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Length
120
Width
60
Gap
15
You get
Bulbs per row
9
Bulbs per column
5
Total bulbs
45
Row spacing
15

Planting bulbs without a grid is how a spring bed ends up crowded on one side and patchy on the other. This bulb spacing calculator turns three measurements — bed length, bed width, and the desired centre-to-centre gap — into a rectangular planting plan: how many bulbs sit in each row, how many rows fill the width, the total count to buy, and the even spacing you actually mark on the soil. Unlike a density-per-square-foot takeoff, this path keeps the layout you will stake with a tape: first and last bulbs on each axis when two or more fit, remaining bulbs at equal intervals that never sit closer than the gap you asked for. Use the same length unit for every input; the counts are unitless.

How bulb count per row and column follows from length, width, and gap

A rectangular bulb bed is a lattice, not a bag of loose density. Measure the length along a row and the width across the rows in any consistent unit — centimetres, inches, or feet — and choose the centre-to-centre gap the catalogue recommends for that species. The calculator places as many centres as will fit without sitting closer than that gap, including a bulb at each end when the bed is at least one gap long.

Along the length, bulbs per row equal floor of length divided by gap, plus one. Along the width, bulbs per column equal floor of width divided by gap, plus one. Total bulbs are the product of those two integers.

When length is an exact multiple of the gap, the even row spacing equals the gap you typed; when a leftover strip remains, that leftover is stretched evenly so the first and last bulbs still sit on the bed edges and every neighbour stays at least the requested gap apart. A 120-by-60 bed with a gap of 15 therefore yields nine bulbs along each row, five along each column, and forty-five bulbs in all, with even spacing still 15 on both axes.

A 100-by-40 bed with a gap of 12 yields nine per row and four per column because floor of 100 over 12 is eight, plus one, and the leftover two units become a row spacing of 12.5. If the gap is larger than a side, only one bulb fits on that axis and the corresponding even spacing is zero — there is no neighbour to separate.

Where a bulb spacing calculator earns its keep

Home gardeners use a bulb spacing calculator before autumn planting to turn a tape measure and a catalogue gap — six inches for tulips, four for crocus, eight or more for large alliums — into a row-and-column plan they can chalk on the soil. Landscape designers and garden-centre counters need the same figure so a quote names both the bag count and the staking pattern, not only an area times a bulbs-per-square-foot density that never tells the crew where the first plant sits.

Parks crews and school gardens batch many rectangular beds with a shared gap so purchase orders and planting tickets share one contract. Content sites that rank for bulb spacing, how many bulbs per row, and garden bed gap queries benefit from a live free tool whose math matches the automation path used by estimating apps. This page is not a flower-bulb density calculator: that search multiplies square footage by bulbs per square foot.

A spacing query asks how many centres fit along each side of a rectangle at a stated gap. Keep the gap honest to the species and the soil — tighter than the catalogue invites disease, looser wastes colour — and measure only the plantable rectangle, not the path around it. For L-shaped or curved beds, split the plan into rectangles and call once per rectangle; this capability focuses on a single rectangular lattice, not survey-grade polygons or staggered triangular grids.

Autumn tulip and daffodil beds

Turn a measured rectangle and the catalogue centre-to-centre gap into bulbs per row, bulbs per column, and a shopping total before you order spring bulbs.

Garden-centre quotes with a staking plan

Give customers both a bag count and the even spacing to mark on the soil, without a private spreadsheet that rounds leftover length differently on each laptop.

School and parks rectangular plantings

Batch the same gap across many beds so purchase orders and crew tickets share one deterministic row-and-column contract.

How does the bulb spacing calculator count bulbs per row and column?

It takes floor(length / gap) + 1 along each row and floor(width / gap) + 1 along each column, then multiplies those integers for the total. Leftover length is stretched into even spacing so the first and last bulbs sit on the bed edges.

What units should I use for length, width, and gap?

Any consistent length unit — centimetres, inches, or feet. All three inputs must share that unit.

What if the gap or spacing is zero or negative?

Spacing must be a positive finite number; zero or negative gap cannot place a second centre and is not billed.

How is this different from a flower bulb density calculator?

A density calculator multiplies bed area by bulbs per square foot. This tool lays out a rectangular grid from length, width, and a desired gap, and returns the per-row and per-column counts you stake with a tape.

Why do 9 bulbs fit in a row 120 long with a gap of 15?

120 divided by 15 makes 8 gaps, and a bulb sits at each end of every gap, so the row holds 8 plus 1, or 9 bulbs. The same rule across a width of 60 gives 5 rows.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/bio/bulb-spacing

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/bio/bulb-spacing \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"length":120,"width":60,"gap":15}'
{
  "length": 120,
  "width": 60,
  "gap": 15
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "bio.bulb_spacing",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

How bulb count per row and column follows from length, width, and gap

The response echoes the three inputs, reports bulbs_per_row, bulbs_per_column, total_bulbs, row_spacing, column_spacing, and bed_area, and includes a short formula string plus a human-readable message you can paste onto a packing list.

Input contract, units, and error behaviour

All three values must be strictly greater than zero and must share one length unit; the service does not convert inches to centimetres or feet to metres. Extremely small or huge magnitudes outside the analytic bounds of 1e-15 to 1e12 are rejected rather than producing non-finite counts. On success you receive rounded echoes of the inputs, the two integer axis counts, their product, the even spacings used to flush the leftover, the rectangular bed area, a formula line, a message, and a short step list that restates the two floor divisions. POST a JSON body with three required positive finite numbers: length, width, and gap. Length may also arrive under the aliases bed_length, L, or len. Width may arrive as bed_width, W, or wid. Gap may arrive as spacing, space, interval, S, desired_gap, or bulb_spacing. Zero, negative, missing, empty, or non-numeric values fail with invalid_input naming the field and are not billed. The product requirement is explicit for spacing: a gap of zero or a negative gap is always rejected, because a centre-to-centre interval that is not positive cannot place a second bulb. Pair total_bulbs with your supplier unit price for a line item; re-run when the client changes bed size or when you switch species and the recommended gap. Failed validation does not consume prepaid balance.

What does the bulb spacing calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →