All Tools View Categories About Contact Privacy

Frame to Timecode Calculator

Convert a frame number to a timecode.

Runs entirely in your browser — no data is uploaded or stored.

Set the exact fps of your project (23.976 vs 24 vs 25) for accurate timecodes.

About this tool & how to use it
  • SRT-shaped output: Results are formatted as HH:MM:SS,mmm with a comma before the milliseconds, which is exactly what a SubRip timing line expects, so you can paste the value into a cue without reformatting.
  • Any frame rate you type: Frame rate (fps) accepts whole and fractional values, so 23.976, 24, 25, 29.97, 30, 50 and 60 all work, and the division uses the exact number you enter rather than rounding to an integer.
  • Sensible default of 25: If Frame rate (fps) is left blank the calculator assumes 25 fps, matching PAL and most European broadcast delivery specifications.
  • Millisecond precision: The result is rounded to whole milliseconds, which is the finest resolution SubRip can express, so no precision is lost on the way into a subtitle file.
  • Two fields, no ceremony: The whole interface is Frame number and Frame rate (fps); there are no presets, projects or settings to configure first.
  • Clear guidance on bad input: If the frame value is missing or not a number, the tool says so plainly instead of returning a misleading zero timecode.
  • Instant and local: The conversion runs in your browser the moment you press the button, with no upload, no queue and no account.
  1. Find the frame number you need to convert, typically from your editor's frame counter, a conform report or an edit decision list.
  2. Type that value into the Frame number field, entering it as a plain integer with no separators or units.
  3. Set Frame rate (fps) to the true rate of your timeline - 23.976 for film-originated web masters, 25 for PAL broadcast, 29.97 for NTSC - and leave it blank only if 25 is genuinely correct, since that is the default used when it is empty.
  4. Click Run to calculate, and read the answer in the result panel on the line beginning Timecode:.
  5. Sanity check the magnitude before you trust it: at 25 fps, one second is 25 frames and one minute is 1,500, so a five-figure frame number should land in the tens of minutes.
  6. Copy the timecode into your subtitle cue, or use the download button to save the result as a .txt note alongside your working files.
  7. Repeat for the out point if you are building a full cue, since a cue needs both a start and an end timestamp.

Example 1 - a cue-in from a PAL edit list. The editor notes that a caption should appear at frame 4320 on a 25 fps timeline, and you need it as an SRT start time.

Frame number: 4320
Frame rate:   25

Timecode: 00:02:52,800

Example 2 - a film-rate project. The same frame count on a 23.976 fps master lands noticeably later, which is exactly why the rate must match the timeline rather than being assumed.

Frame number: 4320
Frame rate:   23.976

Timecode: 00:03:00,180

The eight-second difference between those two results is enough to put a caption on the wrong line of dialogue, so confirming the project frame rate before converting is the single most important step.

About Frame to Timecode Calculator

Frame to Timecode Calculator converts a frame number into the equivalent subtitle timecode. Type a value into Frame number, set Frame rate (fps) to your project rate, and the tool returns a line reading Timecode: HH:MM:SS,mmm - the comma-milliseconds form SubRip uses, ready to paste into a cue.

This is the small piece of arithmetic editors and subtitlers do constantly and get wrong under pressure. Non-linear editors, conform reports and shot lists give positions in frames, while SRT wants hours, minutes, seconds and milliseconds. When a director asks for a caption at frame 4320, someone has to translate that into a timestamp. Post-production assistants, localisation vendors and anyone building a cue list from an edit decision list hit this daily.

The maths is transparent: the frame number is divided by the frame rate to give seconds, multiplied by 1000 for milliseconds, then formatted with zero-padded hours, minutes, seconds and a three-digit millisecond field. Frame 0 is the start of the programme. Leaving Frame rate (fps) empty falls back to 25 fps, the PAL standard. Fractional rates such as 23.976 and 29.97 are used as real numbers, so elapsed time is accurate; note this is a straight non-drop-frame calculation and applies no SMPTE drop-frame renumbering.

Everything is computed in the page with no upload and no network call, so results appear instantly and nothing about your project is recorded.

Features

  • SRT-shaped output: Results are formatted as HH:MM:SS,mmm with a comma before the milliseconds, which is exactly what a SubRip timing line expects, so you can paste the value into a cue without reformatting.
  • Any frame rate you type: Frame rate (fps) accepts whole and fractional values, so 23.976, 24, 25, 29.97, 30, 50 and 60 all work, and the division uses the exact number you enter rather than rounding to an integer.
  • Sensible default of 25: If Frame rate (fps) is left blank the calculator assumes 25 fps, matching PAL and most European broadcast delivery specifications.
  • Millisecond precision: The result is rounded to whole milliseconds, which is the finest resolution SubRip can express, so no precision is lost on the way into a subtitle file.
  • Two fields, no ceremony: The whole interface is Frame number and Frame rate (fps); there are no presets, projects or settings to configure first.
  • Clear guidance on bad input: If the frame value is missing or not a number, the tool says so plainly instead of returning a misleading zero timecode.
  • Instant and local: The conversion runs in your browser the moment you press the button, with no upload, no queue and no account.

How to Use

  1. Find the frame number you need to convert, typically from your editor's frame counter, a conform report or an edit decision list.
  2. Type that value into the Frame number field, entering it as a plain integer with no separators or units.
  3. Set Frame rate (fps) to the true rate of your timeline - 23.976 for film-originated web masters, 25 for PAL broadcast, 29.97 for NTSC - and leave it blank only if 25 is genuinely correct, since that is the default used when it is empty.
  4. Click Run to calculate, and read the answer in the result panel on the line beginning Timecode:.
  5. Sanity check the magnitude before you trust it: at 25 fps, one second is 25 frames and one minute is 1,500, so a five-figure frame number should land in the tens of minutes.
  6. Copy the timecode into your subtitle cue, or use the download button to save the result as a .txt note alongside your working files.
  7. Repeat for the out point if you are building a full cue, since a cue needs both a start and an end timestamp.

Examples

Example 1 - a cue-in from a PAL edit list. The editor notes that a caption should appear at frame 4320 on a 25 fps timeline, and you need it as an SRT start time.

Frame number: 4320
Frame rate:   25

Timecode: 00:02:52,800

Example 2 - a film-rate project. The same frame count on a 23.976 fps master lands noticeably later, which is exactly why the rate must match the timeline rather than being assumed.

Frame number: 4320
Frame rate:   23.976

Timecode: 00:03:00,180

The eight-second difference between those two results is enough to put a caption on the wrong line of dialogue, so confirming the project frame rate before converting is the single most important step.

Benefits

  • No more mental arithmetic: Converting frames to time by hand invites slips at the minute and hour boundaries, and this removes that risk entirely for every cue you build.
  • Frame-accurate captions: Because the result is exact to the millisecond, captions placed from your editor's frame counter land where the edit intended rather than a few frames adrift.
  • Bridges editing and subtitling: Notes that arrive in frames from an assistant editor or a QC report can be actioned in a subtitle file immediately, without a conversion table or a spreadsheet.
  • Correct across delivery standards: Entering the true rate means the same frame number is handled properly whether you are on a 23.976 web master, a 25 fps PAL deliverable or a 29.97 NTSC broadcast.
  • Faster than opening an NLE: A single conversion takes seconds in a browser tab, with no project to load and no licence to occupy.
  • Nothing leaves your machine: The calculation is local, so frame counts from unreleased productions are never transmitted or stored anywhere.

Frequently Asked Questions

Which frame rates are supported?
Any fps value; common ones are 23.976, 24, 25, 29.97, 30, 50, 60.
What format is the output?
Standard SRT timecode HH:MM:SS,mmm (comma milliseconds).
Why convert frames?
Some NLEs and capture tools reference positions by frame; this maps them to time.
Is my file uploaded?
No, calculation is local.