Worked guide · capture timing and endpoints
A clear timeline
for a changing scene.
A useful time-lapse plan distinguishes the space between starts, the time a frame keeps the camera busy, and the duration of the assembled clip. Lapseframe keeps those three quantities separate and states exactly how it counts the first and final frame.
Start-to-start interval is the input convention
Here, an interval is the elapsed time from one shutter start to the next shutter start. A two-second interval produces planned starts at 0, 2, 4 and 6 seconds. It does not mean two seconds of waiting after each shutter closes. If an external controller uses a post-exposure delay instead, its setting cannot be copied directly into this field. Read the controller's definition and translate it before calculating.
The origin is the start of the first exposure, not the instant you press a physical button. A self-timer, scheduled start delay or operator preparation occurs before that origin. This page does not model them. All outputs are relative durations rather than calendar appointments, and there is no promise that a device fires at the indicated instants.
One photograph becomes one playback frame
The model retains every planned photograph once, in order, and displays each for one frame of a constant-rate clip. It does not include bracketing, multiple shots per interval, dropped images, frame blending, repeated holds, transitions or a title card. If you use those operations, the eventual duration can change. Separate capture timing from the editorial decisions you make afterwards.
Adobe describes assembling time-lapse from sequences of photographs and notes that interval choices depend on the moving subject. That creative choice is left to you here; no suggested interval is labelled suitable for every scene. See Adobe's time-lapse guidance for its photographic context.
Budget shutter and additional busy time once
Call the shutter duration S and your entered extra busy time O. The model uses a busy period C = S + O after every start. O is a deliberate assumption for activity outside the exposure: for example an allowance you have measured for writing or recovery. It is not automatically calculated from the shutter, camera model, card, noise reduction or focus settings. Avoid adding an activity twice if it is already included in your own measured allowance.
The interval I must be at least C. If C exceeds I, the entries describe overlapping model cycles, and Lapseframe rejects the calculation and clears its exports. If C equals I, the arithmetic fits with zero spare time. That exact equality is visibly flagged; it offers no allowance for variability. A positive remainder I − C only measures spare time against your entered figures.
Nikon's Z 9 manual warns that processing as well as exposure requires time, and insufficient intervals can lead to skipped captures. This supports checking more than the shutter alone, while its device-specific features and restrictions remain outside this calculator. Consult the actual Nikon interval-timer documentation, or your own equipment manual, and test the intended setup. Lapseframe does not certify compatibility.
How many complete cycles fit a window?
Available capture time is measured from the first start until all model activity must finish. The final additional busy time is included, even though you might choose to stop observing your real equipment earlier. A frame fits only when its start plus C is no later than the window endpoint D. Equality at the endpoint is included. This is a specific conservative counting convention, rather than a claim about how a particular camera counts a shooting period.
Otherwise: N = floor((D − C) / I) + 1
Last start = (N − 1) × I, when N > 0
Last shutter closes = last start + S
Model completion = last start + S + O
The added one accounts for the frame starting at zero. Subtracting the final busy period before dividing prevents a frame from being counted merely because it starts inside the window while finishing outside it. With zero frames, there is no last start, closing time or completion, so those outputs say not applicable rather than inventing a negative timestamp.
Example: half an hour becomes half a minute. Let D = 1,800 seconds, I = 2 seconds, S = 0.25 seconds and O = 0.25 seconds. C is 0.5 seconds. floor((1,800 − 0.5) / 2) + 1 gives 900 complete model frames.
The final start is 899 × 2 = 1,798 seconds. Its shutter closes at 1,798.25, and the entered final recovery finishes at 1,798.5. There are 1.5 unused seconds in the window. At 30 fps, 900 frames produce exactly 30 seconds of playback.
Endpoint counting can change the answer by one
Consider a five-second window, two-second start spacing and one second of busy time. Starts at zero, two and four all fit: the final cycle ends exactly at five. This yields three frames, not floor(5 / 2) = 2. Now shorten the window to 4.999999999999 seconds. The third cycle ends too late, so only two frames fit. Lapseframe compares exact fractions instead of rounding the window to five first.
A window of zero produces zero frames because the shutter must be positive. A positive window shorter than one busy cycle also produces zero. Neither case is a validation error; it is a useful result that shows the constraint cannot accommodate a full model photograph. Zero target playback is different and is rejected because target mode asks for a positive clip.
Work backwards from a playback target
For a target clip lasting P seconds at F frames per second, the minimum whole number of photographs is N = ceil(P × F). The resulting clip lasts N / F seconds. The ceiling avoids promising a duration shorter than requested; the result separately shows any extra playback time. Capture completion still follows (N − 1) × I + C, rather than N × I.
Example: a 10-second target at 24 fps. The target needs 240 frames. With I = 5 seconds, S = 1 second and O = 0.5 seconds, the last start is 239 × 5 = 1,195 seconds. Model completion is 1,196.5 seconds. The clip is exactly 10 seconds, while the planned capture takes 19 minutes and 56.5 seconds from the first start.
A fractional target. A 0.1-second target at 24 fps needs ceil(2.4) = 3 frames. Its clip lasts 3/24 = 0.125 seconds, adding 0.025 seconds beyond the requested minimum. Reducing this result to two frames would miss the target.
Decimal and fraction frame rates are distinct inputs
A typed decimal is interpreted exactly as that decimal. You can also supply a positive integer fraction, such as 30000/1001. The input 29.97 is exactly 2997/100; it is not silently replaced with 30000/1001. Use whichever mathematical rate your project actually intends. The tool reports the exact rate in the result and exports, without making a broadcast-format or device-support assertion.
For 300 photographs, playback at 30 fps is 10 seconds. At 30000/1001 fps it is 10.01 seconds exactly. At the decimal rate 29.97, it is 10000/999 seconds, approximately 10.01001001001. Rounded on-screen seconds are explicitly marked, and exported values retain the exact fraction. Adobe's frame-rate interpretation instructions explain where an assumed playback rate can be set in its editor; your chosen workflow may differ.
Units change the display, not the physical duration
Capture and target fields each have an independent seconds, minutes or hours selector. Unit changes preserve the exact previously entered duration. A repeating conversion, such as one second to minutes, may need a rounded field display. Calculation continues to use the exact original quantity until you edit that duration field. Editing creates a new request from the displayed number and current unit. The other mode's saved input remains independent.
All decimal fields accept up to twelve decimal places, with no commas, signs or exponent notation. Shutter and interval are positive, overhead can be zero, and the interval minimum is 0.000001 seconds. Timing components are limited to 86,400 seconds. The capture window limit is 31,536,000 seconds, target playback is limited to 86,400 seconds, frame rate spans 0.001–1,000 fps and calculated count is capped at 10,000,000 frames. These are arithmetic and interface bounds, not supported equipment settings.
Use the checkpoint export as reference notes
Up to twelve frames, the timeline lists every frame. For larger counts it deliberately shows only the first five and last five. The CSV uses exactly the same sampled coverage and says so in its summary. It never claims to be a complete long schedule. Each checkpoint records the frame number, exposure start, shutter close, model-ready time and playback start as exact relative seconds.
Copy, text and CSV are generated locally. They do not send commands to a camera or create a timer import file. After any input change, the previous result and exports are cleared, so a plan cannot be saved as though it represented the new values. Restore returns the example and clears the calculated result. Nothing in this tool measures battery life, storage, actual shot loss, drift, image quality or weather. Keep those practical checks separate from this transparent timing model.