The most common astrophotography question from a light-polluted backyard is “how long should my subs be?” The answer is set by physics: expose just long enough that the noise from the sky background overwhelms your camera’s read noise, and no longer. This calculator finds that optimal sub-exposure from your sky rate and read noise.
How it works
Read noise is a fixed cost paid once per sub-exposure. Sky background contributes shot noise that grows as the square root of time. You want the sky shot noise to be several times the read noise so that read noise stops mattering:
sky_noise = sqrt(sky_rate * t)
goal: sky_noise = factor * read_noise
Solving for the sub-exposure time:
t_optimal = (factor * read_noise)^2 / sky_rate
A “swamp factor” of 3 means sky noise is 3x read noise, which already pushes total read noise contribution to under 6% — a widely used target. Factor 5 is more conservative.
Why brighter skies want shorter subs
Because t is inversely proportional to the sky rate, doubling the sky brightness halves
the optimal sub time. A Bortle 8 city sky might be read-noise limited in 30–60 seconds with
a modern low-read-noise CMOS camera, while a dark Bortle 2 site needs several minutes.
Worked example
Suppose you have a CMOS camera with a read noise of 1.8 electrons at your chosen gain, and your sky background rate is 6 electrons per pixel per second (a typical broadband measurement for a Bortle 6 suburban site). With a swamp factor of 3:
t_optimal = (3 × 1.8)^2 / 6
= 29.16 / 6
≈ 4.9 seconds
So roughly 5-second subs are already sky-noise dominated. With 60-second subs, the sky noise is overwhelming the read noise by a factor of 11 — there is no reason to push longer unless you are after very faint extended emission. In practice, 60-second subs (or even 30-second subs) are practical from this sky because they are well past the minimum threshold.
Now change the filter to a 3 nm Ha narrowband. A typical narrowband sky rate from the same Bortle 6 site might drop to 0.08 electrons per second — 75 times lower. The new optimal sub:
t_optimal = (3 × 1.8)^2 / 0.08
≈ 365 seconds (about 6 minutes)
This is why narrowband imaging from light-polluted sites can justify long subs: the sky contribution through a narrow filter is tiny, so read noise dominates until you expose for several minutes.
Measuring your own sky rate
To find the sky background rate for your specific camera, filter, and sky:
- Take a test sub at a dark, empty patch of sky (no bright stars in frame).
- Measure the median pixel value in ADU from an empty area.
- Subtract the bias or dark offset from that value.
- Multiply by your camera’s gain (electrons per ADU, from the published gain table).
- Divide by the exposure time in seconds.
The result is your sky background rate in electrons per pixel per second for that filter and sky condition. Note that the rate changes with atmospheric transparency and the angular distance from the Moon, so measure for each session.
Tips
Modern cooled CMOS cameras have very low read noise (1–2 e-), so optimal subs are short and many — perfect for dodging satellites and dithering between frames. Treat the result as the minimum useful sub length; longer subs are fine as long as they do not saturate bright stars or run into tracking errors.