# Timecode to Frames Calculator

URL: https://speedycalculator.com/calculators/other/timecode-to-frame/
Last updated: 2026-10-30

> The timecode to frames calculator converts an SMPTE timecode (hours, minutes, seconds and frames) into a total frame count at any common frame rate, with correct drop-frame handling for 29.97 and 59.94 fps, plus the real elapsed time.

## Inputs

- Frame rate
- Frame rate (fps)
- Hours
- Minutes
- Seconds
- Frames

## Results

- Total number of frames
- Frame number counting from 1
- Timecode (normalised)
- Real elapsed time (clock)
- Elapsed seconds
- Elapsed minutes
- Frames if counted without drop-frame
- Timecode label vs real clock
- Same frame in the other counting mode
- 35 mm film length (16 frames per foot)

## Formula

```
Non-drop: N = (3600·HH + 60·MM + SS) × R + FF · Drop-frame: N = (3600·HH + 60·MM + SS) × R + FF − D × (TM − ⌊TM ÷ 10⌋), TM = 60·HH + MM, D = 2 (29.97) or 4 (59.94) · Real time = N ÷ actual fps
```

## Explanation

A timecode tells you where a frame sits; a frame number tells you how many frames came before it. You need the number when you trim an image sequence, set a render range, sync a sound effect in a script, or check how many frames a shot really has. The arithmetic is simple multiplication at 24, 25, 30, 50 or 60 fps.

The NTSC-family rates add a twist. At 29.97 and 59.94 fps, drop-frame timecode skips some frame labels to stay in step with the clock, so a timecode of 00:10:00;00 is frame 17,982 rather than 18,000. The skipped labels never exist – 00:01:00;00 is not a valid drop-frame timecode – and the calculator tells you when you have typed one.

Alongside the frame count you get the frame number in 1-based counting (as some editors display it), the real elapsed time to the millisecond, the normalised timecode and the equivalent footage of 35 mm film.

### How to use the Timecode to Frames Calculator

- **Frame rate**
- **Frame rate (fps)**
- **Hours**
- **Minutes**
- **Seconds**
- **Frames**

Everything is calculated in your browser, so results appear instantly and nothing you type is sent to a server.

### How it works

Pick the frame rate, then type the hours, minutes, seconds and frames. The calculator multiplies the whole seconds by the timecode base (24, 25, 30, 50 or 60), adds the frames and, in drop-frame mode, subtracts the frame numbers skipped in every minute that is not a multiple of ten.

### Worked example

At 24 fps, 00:08:35:10 is (0 × 3,600 + 8 × 60 + 35) × 24 + 10 = 515 × 24 + 10 = **12,370 frames**, and it is reached after 12,370 ÷ 24 = 515.417 s. Choose 29.97 fps drop-frame and the same label 00:08:35;10 is 515 × 30 + 10 − 2 × (8 − 0) = 15,460 − 16 = 15,444 frames, which play for 15,444 ÷ 29.97003 = 515.315 s.

### Frames in common durations

Duration24 fps25 fps29.97 DF30 fps59.94 DF60 fps1 second2425303060601 minute1,4401,5001,8001,8003,6003,60010 minutes14,40015,00017,98218,00035,96436,0001 hour86,40090,000107,892108,000215,784216,000

## Worked example

Inputs — Frame rate: 24 fps (cinema); Hours: 0; Minutes: 8; Seconds: 35; Frames: 10.

Results — **Total number of frames = 12,370**; Frame number counting from 1 = 12,371; Timecode (normalised) = 00:08:35:10; Real elapsed time (clock) = 00:08:35.417; Elapsed seconds = 515.417 s; Elapsed minutes = 8.5903 min.

## Key terms

- **Frame**: A single still picture of a video.
- **Frame rate**: Frames shown per second (fps); 29.97 fps is exactly 30000/1001.
- **Drop-frame**: Timecode counting that skips some labels at 29.97/59.94 fps so the timecode matches real time.
- **Normalised timecode**: The timecode rebuilt from the frame count, written with ; for drop-frame and : for non-drop.

## FAQ

**How do I convert timecode to frames?**
Multiply the whole seconds (hours × 3,600 + minutes × 60 + seconds) by the frame rate and add the frames. At 24 fps, 00:08:35:13 is 515 × 24 + 13 = 12,373.

**How many frames are in 1 hour at 24 fps?**
86,400. At 25 fps it is 90,000 and at 30 fps 108,000.

**What is 01:00:00;00 in 29.97 drop-frame?**
Frame 107,892 – 108 frame numbers (2 per minute in 54 of the 60 minutes) are skipped.

**Why does my editor say the timecode is invalid?**
In drop-frame counting the labels ;00 and ;01 (or ;00 to ;03 at 59.94) do not exist at the start of minutes 1–9, 11–19 and so on. The next valid label is ;02 (or ;04).

**Is 23.976 the same as 24 fps for timecode?**
The labels count the same way (24 per second), so the frame count is the same, but the real elapsed time is 0.1% longer at 23.976 fps.

**Does the frame count start at 0?**
Yes – 00:00:00:00 is frame 0. The calculator also shows the 1-based frame number used by some programs.


## Sources

- [SMPTE timecode (Wikipedia – summary of SMPTE ST 12-1)](https://en.wikipedia.org/wiki/SMPTE_timecode)
- [Microsoft Learn – AVEncVideoHeaderDropFrame property (drop-frame timecode)](https://learn.microsoft.com/en-us/windows/win32/directshow/avencvideoheaderdropframe-property)
