How Many Frames Do You Need? A Straight Answer
The arithmetic behind stacking: why 200 frames is not twice as good as 100, when adding time stops helping, and how to tell which limit you have hit.
“Shoot as many as you can” is the standard advice. It is not so much wrong as useless: it gives you no way to plan a session, no way to know when to stop, and no explanation for why last week’s two hours came out better than this week’s three.
There is a straight answer, and it follows from one relationship.
The arithmetic
Signal accumulates linearly with the number of frames. Noise is random, partly cancels, and grows only with the square root. So the signal-to-noise ratio improves by √N.
That has consequences most people find surprising:
| Frames | Improvement over one frame |
|---|---|
| 4 | 2× |
| 16 | 4× |
| 64 | 8× |
| 256 | 16× |
| 1024 | 32× |
Every doubling of quality costs four times as many frames.
This is why going from 10 frames to 40 is a big change and going from 200 to 260 is invisible. You added 30% more data for a 14% improvement, and 14% is below what the eye reliably notices in a photograph. Nothing went wrong; the improvement was just too small to see.
The practical rule: to see a real step up, plan to quadruple. If 50 frames gave you something decent, 200 is the next visible level. 70 is not.
Read noise decides your sub length
A second noise source does not average away the same way. Every sensor readout adds a fixed penalty, and it does not depend on exposure length. A 5-second frame and a 500-second frame each pay it once.
So a given total integration carries read noise in proportion to how many pieces you cut it into:
- 90 minutes as 540 × 10-second subs → 540 helpings of read noise
- 90 minutes as 18 × 5-minute subs → 18 helpings
Same total light, roughly thirty times less readout penalty.
This is why a guided setup pulls ahead of a smart telescope on faint targets at the same total time. It does not collect more photons. It reads the sensor far less often.
So use the longest sub your mount reliably tracks. That is a mechanical question, not a processing one, and on faint targets it outweighs everything else.
The counter-pressure is obvious. A trailed 300-second frame is worth nothing, and a lost frame costs more than a slightly noisier one. Find the length where your keep rate stays high and stay there.
What “enough” looks like
Rough working numbers, assuming reasonable skies:
Bright targets (Orion’s core, the Pleiades, Andromeda’s center, the Moon): twenty to fifty frames gets a good result. These are bright enough that you are not fighting the noise floor, and more time adds little.
Medium targets (most Messier galaxies and nebulae): one hundred to three hundred. This is where the √N curve does real work and each extra hour still shows.
Faint targets (outer nebulosity, integrated flux nebula, faint tidal tails): five hundred and up, though here sub length and sky quality matter more than count. If you are read-noise limited or sky limited, frames alone will not rescue it.
Planetary is a different regime. You want thousands, because you throw most of them away. Lucky imaging keeps the sharpest fraction, so 5,000 frames at 10% leaves 500 good ones, and the selection does the work rather than the integration.
Three limits, and how to tell them apart
Adding frames only helps if frames are what limits you. Three common limits are something else.
Read noise. With very short subs the noise floor is set by readout, not by sky photons. More frames still help, but slowly, and you pay a fixed cost every time. Symptom: long integration, stubbornly noisy background, short subs. Fix: longer subs, not more of them.
Sky. Under bright skies the background dominates and faint signal may never rise above it. Signal-to-noise still improves as √N, but √N of undetectable is still undetectable. Symptom: bright background, and faint regions that stay absent however long you integrate. Fix: darker skies, or narrowband filters that reject most light pollution.
Alignment. If registration leaves half-pixel errors, more frames add more slightly misregistered data. The stack gets smoother and no sharper. Symptom: noise falls with more frames but detail never improves, and stars look soft in a way that does not match your focus. Fix: check that registration handles rotation, which matters on every alt-azimuth mount, including all smart telescopes.
Check that last one before you blame the sky. It looks exactly like poor seeing, and people lose whole seasons to it.
The diagnostic that settles it in one run
Stack your session. Then stack half of it (every other frame) and compare the two at the same stretch.
- Clearly better with all of them: frames are helping. Shoot more.
- Barely distinguishable: you have hit one of the three limits above. More frames will not fix it, so change something else.
This costs one extra processing run and tells you more than any rule of thumb, because it is measured on your data, your sky and your equipment.
Rejection needs a minimum
One thing does depend on raw count: outlier rejection.
With eight frames you cannot estimate a distribution. Any clipping method is working from too few samples, and aggressive rejection discards real signal while claiming to remove outliers. The image looks clean and is quietly missing faint detail. It does not look broken, just slightly empty, and nothing on screen tells you why.
Practical thresholds:
- Under 8 frames: plain averaging or a median. Accept the satellite trails; you cannot safely reject them.
- 8 to 15: Winsorized clipping, which pulls outliers toward the bulk rather than discarding them.
- Above 15: ordinary sigma clipping becomes safe.
- Above 15 with drifting transparency: linear-fit clipping, which expects a smooth drift across the stack and rejects only what departs from it.
The last case is worth knowing. When high cloud rolls in or the target sinks toward the light dome, the frames really do differ. Sigma clipping treats frames at the ends of the range as outliers, and the darkest ones are often the clearest frames of the night. You lose your best data to a method that assumed it was wrong.
So, how many?
- Sub length first: the longest your mount tracks reliably. That sets read noise, and read noise dominates faint targets.
- Then count, in factors of four: 50 → 200 → 800. Adding 20% is not a plan.
- At least 15 frames if you want proper outlier rejection.
- Check with the half-stack test rather than trusting any of the above, this article included.
If the half-stack looks the same as the full one, spend your next clear night on a different target rather than more of the same one.
Also in Deutsch · Español · Français · Italiano · 日本語 · 한국어 · Nederlands · Русский · 简体中文
Try it on your own data
Akastroid runs its processing on your own frames and logs each step it took.
Download Akastroid