Definition

What Is Drop-Frame Timecode?

VideoText editorial team. Updated September 13, 2026.

Direct definition

Drop-frame timecode is a numbering system for 29.97 fps (and 59.94) video. It skips certain frame numbers so the timecode display stays close to real elapsed time. It does not delete video frames.

The sections below explain how drop-frame timecode is used in transcription and subtitle work, what people often mix up, and which VideoText workflow applies when the next step is a file or review pass.

Key takeaways

  • Drop-frame is a label convention, not a render mode.
  • Mixing DF and NDF on one sequence is a classic sync bug.
  • SRT milliseconds are wall-clock; SMPTE DF is a different counting system.

The thing people often get wrong

Editors sometimes hear “drop-frame” and think frames were removed from the movie. Only numbers in the clock are skipped.

Why drop-frame exists

NTSC video runs at 29.97 frames per second rather than a round 30. Counting 30 frames per second against a clock that is slightly slower means the timecode gradually runs ahead of real elapsed time, by about 3.6 seconds every hour.

Drop-frame corrects the count by skipping two frame numbers at the start of most minutes — the numbers, not the frames themselves. No picture is lost. Over an hour the labels realign with wall-clock time.

Reading it and getting it right

Drop-frame is written with semicolons (01;00;00;00) and non-drop with colons (01:00:00:00). Mixing them up is the usual cause of a caption file that starts in sync and drifts by a few seconds across a long programme.

The rule is that frames 0 and 1 are skipped at the start of every minute except every tenth minute. If a delivery specification names a frame rate of 29.97, ask explicitly whether drop-frame is expected rather than assuming.

Frequently asked questions

Are any actual video frames discarded?
No. Only frame numbers are skipped in the counting sequence. The picture is untouched.
Does drop-frame apply at 25 fps?
No. PAL-region material at 25 fps runs at exactly 25 frames per second, so there is no drift to correct and no drop-frame variant.
How do I spot a drop-frame mistake?
Sync that is correct at the start and progressively wrong later, by roughly 3.6 seconds per hour, is the signature.
Should I use drop-frame or non-drop?
Follow the delivery specification. Broadcast at 29.97 usually expects drop-frame so that timecode matches programme duration; other workflows may not. Mixing the two within one delivery is the failure to avoid.

Related terms

Sources

  1. SMPTE: SMPTE ST 12 timecode family

Related VideoText workflow