Skip to content

Frames to Timecode Converter

Convert an absolute frame count into an SMPTE-style timecode, or convert a timecode back into a frame count. Pick the frame rate and, at 29.97 or 59.94 fps, whether drop-frame numbering applies. The tool never assumes a rate for you.

Only valid at 29.97 or 59.94 fps
Need to add or subtract two timecodes instead of converting one? See Timecode Duration Calculator.

Worked example

A 30 second clip recorded at 30 fps contains exactly 900 frames, since 30 frames per second times 30 seconds equals 900. Entering 900 in frame count to timecode mode at 30 fps with drop-frame off returns 00:00:30:00 exactly, with no rounding involved because 30 fps is a whole number rate. The same clip at 29.97 fps drop-frame reads slightly differently near each minute boundary because two frame numbers are skipped from the display at the start of every minute except every tenth minute. That skip is a labeling correction only. No video frames are actually deleted. It exists so the displayed timecode tracks real elapsed clock time closely, since 29.97 fps runs about 0.1 percent slower than a true 30 fps signal would.

Common mistakes

  • Applying drop-frame numbering at a rate other than 29.97 or 59.94 fps. SMPTE only defines drop-frame correction for those two NTSC-family rates.
  • Assuming a non-drop timecode at 29.97 fps tracks real wall clock time exactly. It does not. Non-drop is a simpler count that slowly drifts from real time, which is exactly the gap drop-frame numbering exists to correct.
  • Typing a frame number that is too high for the selected rate, such as frame 30 at 25 fps. The frame field can never reach the rounded frame rate itself.

Limitations

This tool performs frame arithmetic only. It does not read or write actual video files, does not know a specific camera or editing system's own internal timecode track, and makes no claim about broadcast delivery standards for any market. Confirm the exact frame rate and drop-frame policy your own production or delivery format requires before relying on a converted value.

Frequently asked questions

Why does 29.97 fps exist instead of a clean 30 fps?
It is a historical broadcast engineering compromise from the introduction of NTSC color television, kept in wide use today for backward compatibility with existing production and delivery pipelines.
What happens if I enter a drop-frame timecode that names a dropped frame number?
The converter rejects it and explains that the exact frame number you entered does not exist under drop-frame numbering, rather than silently accepting an impossible value.