Skip to content

Production Management calculator

SMPTE Timecode Calculator

Timecode arithmetic means converting to a frame count, doing integer math, and converting back, with drop-frame rules applied at 29.97. This calculator adds and subtracts timecode at every common rate and shows the underlying frame count, handling the drop-frame minute boundaries exactly.

Frame rate
Operation
Timecode A
Timecode B
Result01:12:34;15
Frame count130505frames
Real time4354.52 s

Formulas

Timecode to frames (non-drop)

frames = (3600h + 60m + s) × fps + f
fps:
nominal frame rate (24, 25, 30)

Drop-frame correction (29.97 DF)

subtract 2 × (totalMinutes - floor(totalMinutes / 10))
totalMinutes:
whole minutes of the timecode value

How it works

Drop-frame exists because NTSC color video runs at 30000/1001 ≈ 29.97 fps, not 30. Counting labels at exactly 30 per second drifts 3.6 seconds behind the wall clock every hour. Drop-frame timecode fixes the label, not the video: it skips frame numbers 00 and 01 at the start of every minute except minutes divisible by 10, dropping 108 labels per hour so the count tracks real time within milliseconds.

No frames of picture are ever dropped; only numbers are skipped. That is why 00:00:59;29 is followed by 00:01:00;02, and why the semicolon separator conventionally marks drop-frame while a colon marks non-drop.

Live production cares because the show clock is a wall clock. An hour of 29.97 NDF timecode is one hour and 3.6 seconds of real time, which is a missed broadcast window or an out-of-sync fireworks cue. Use DF when timecode must equal clock time at 29.97; use NDF (or 24/25/30 flat rates) when frame counting matters more than the clock.

Worked example: Add a 00:12:34;15 segment to a 01:00:00;00 show start at 29.97 DF

  1. 1.Convert both to frame counts with the DF correction: 01:00:00;00 = 107,892 frames, 00:12:34;15 = 22,597 frames.
  2. 2.Add: 130,489 frames.
  3. 3.Convert back inserting dropped numbers: 01:12:34;15.

01:12:34;15, with all drop-frame boundaries handled in the conversion.

Timecode hour vs real time

Timecode hour vs real time
RateOne TC hour in real timeClock-accurate?
24 / true 241:00:00.0Yes
23.976 (24 labels)1:00:03.6No (+3.6 s)
251:00:00.0Yes
29.97 NDF1:00:03.6No (+3.6 s)
29.97 DF1:00:00.0 (±ms)Yes
30 (true)1:00:00.0Yes

Field notes

  • The separator is the tell: 01:00:00;00 (semicolon) is drop-frame, 01:00:00:00 is non-drop. Devices disagreeing about DF/NDF is the classic mid-show drift bug.
  • Jam-sync devices from one master at the top of the day; free-running clocks drift apart even at the "same" rate.

Frequently asked questions

What is drop frame timecode?

A labeling scheme for 29.97 fps video that skips frame numbers 00 and 01 each minute (except every tenth minute) so timecode matches the wall clock. No video frames are discarded.

Why is 00:01:00;00 not a valid drop-frame timecode?

Because the 00 and 01 frame labels are skipped at every minute not divisible by ten. After 00:00:59;29 the next label is 00:01:00;02.

How far does non-drop timecode drift from the clock?

At 29.97 fps, 1.001 seconds of real time pass per labeled second: 3.6 seconds per hour, 86.4 seconds per day. Flat rates (24, 25, 30, and true 23.976 counting) have their own relationships; 25 fps matches the clock exactly.

Related resources

Source: SMPTE ST 12-1 timecode; drop-frame counting rule (skip 2 frames per minute except each tenth minute).

Last updated 2026-07-11