How many seconds per day is 1 ppm?
86.4 ms per day. One day is 86,400 seconds, and one part per million of that is 0.0864 s. Over a 365-day year the same 1 ppm adds up to 31.54 s.
Crystal and clock specs come in ppm, but the number you need is usually hertz or seconds. This ppm calculator converts a frequency error between ppm and hertz, shows how far a clock drifts in a day, a month or a year, and works back from drift you measured. For a crystal, it also adds up tolerance, temperature stability and aging into one total.
Magnitude of the ± error.
Frequency deviation
500 Hz
± at 20 ppm
A positive offset means the oscillator runs fast and the clock gains time. Month figures use 30 days and year figures use 365 days.
Multiply the frequency by ppm ÷ 1,000,000 for the error in hertz: 50 ppm of 25 MHz is 1.25 kHz. Multiply the elapsed time by the same fraction for clock drift: 1 ppm is 86.4 ms per day, so a clock 20 ppm off gains or loses up to 1.728 s per day, or 10.51 min in a 365-day year.
Frequency offset is a ratio, so the same ppm figure applies at any frequency. The hertz value scales with the frequency; the time error does not depend on it at all.
A clock counting an oscillator that is y fast reads t × (1 + y) after a true time t, so:
A crystal’s total error combines the terms on its datasheet with those of the oscillator circuit:
The worst case is what the limits on a datasheet guarantee. The root sum square is a statistical estimate that holds only when the terms are independent, which is the assumption behind the combination rule in the GUM.
Δf = 25,000,000 × 50 ÷ 1,000,000 = 1.25 kHz, so the clock can be anywhere from 24.99875 MHz to 25.00125 MHz. A counter running from it would drift up to 4.32 s per day.
One week is 604,800 s, so y = 2 ÷ 604,800 and the offset is 3.307 ppm fast. On a 32.768 kHz crystal that is 108 mHz, and it would gain 1.738 min over a 365-day year.
A 25 MHz crystal with ±15 ppm tolerance, ±15 ppm stability and ±10 ppm aging over 10 years, plus ±3.5 ppm from the oscillator and ±0.5 ppm from the load capacitance, totals 15 + 15 + 10 + 3.5 + 0.5 = 44 ppm worst case, inside the note’s 50 ppm target. The root sum square of the same terms is 23.72 ppm. (The note’s printed sum shows the load term as 5, but its own text says 0.5 and its total of 44 ppm only works with 0.5.)
The maximum time error for a constant frequency offset, from ppm to seconds per day, per 30-day month and per 365-day year.
| Error | Per day | Per 30 days | Per 365 days |
|---|---|---|---|
| ±1 ppm | 86.4 ms | 2.592 s | 31.54 s |
| ±2 ppm | 172.8 ms | 5.184 s | 1.051 min |
| ±5 ppm | 432 ms | 12.96 s | 2.628 min |
| ±10 ppm | 864 ms | 25.92 s | 5.256 min |
| ±20 ppm | 1.728 s | 51.84 s | 10.51 min |
| ±30 ppm | 2.592 s | 1.296 min | 15.77 min |
| ±50 ppm | 4.32 s | 2.16 min | 26.28 min |
| ±100 ppm | 8.64 s | 4.32 min | 52.56 min |
| ±200 ppm | 17.28 s | 8.64 min | 1.752 h |
| ±500 ppm | 43.2 s | 21.6 min | 4.38 h |
The deviation in hertz for a given error. The ppm figure is the same whether the crystal is slow or fast; only the sign of the deviation changes.
| Frequency | ±10 ppm | ±20 ppm | ±50 ppm | ±100 ppm |
|---|---|---|---|---|
| 32.768 kHz | ±328 mHz | ±655 mHz | ±1.64 Hz | ±3.28 Hz |
| 1 MHz | ±10 Hz | ±20 Hz | ±50 Hz | ±100 Hz |
| 8 MHz | ±80 Hz | ±160 Hz | ±400 Hz | ±800 Hz |
| 12 MHz | ±120 Hz | ±240 Hz | ±600 Hz | ±1.2 kHz |
| 16 MHz | ±160 Hz | ±320 Hz | ±800 Hz | ±1.6 kHz |
| 25 MHz | ±250 Hz | ±500 Hz | ±1.25 kHz | ±2.5 kHz |
| 48 MHz | ±480 Hz | ±960 Hz | ±2.4 kHz | ±4.8 kHz |
| 100 MHz | ±1 kHz | ±2 kHz | ±5 kHz | ±10 kHz |
86.4 ms per day. One day is 86,400 seconds, and one part per million of that is 0.0864 s. Over a 365-day year the same 1 ppm adds up to 31.54 s.
Up to 1.728 s per day, 51.84 s in a 30-day month and 10.51 min in a 365-day year, if it sits at the edge of its tolerance the whole time.
A real-time clock (RTC) drifts by its ppm error times the elapsed time, so a 32.768 kHz crystal that is 20 ppm off gains or loses up to 1.728 s per day and 51.84 s in a 30-day month. The clock drift calculator above takes your own ppm figure and elapsed time.
Multiply the frequency by the ppm and divide by one million. 50 ppm of 25 MHz is 25,000,000 × 50 ÷ 1,000,000 = 1.25 kHz. Use the ppm to Hz calculator and you also get the lowest and highest frequency.
Divide the deviation by the nominal frequency and multiply by one million. A 25 MHz oscillator measured at 25,000,250 Hz is 250 ÷ 25,000,000 × 1,000,000 = 10 ppm fast. Or enter the nominal and measured frequencies in the Hz to ppm calculator.
One percent is 10,000 ppm, so 0.01 % is 100 ppm and 1 ppm is 0.0001 %. One ppm is also 1,000 parts per billion (ppb).
Add them when you must guarantee a limit: Renesas AN-803 sums every term for its maximum error. Root sum square assumes the terms are independent and gives a smaller, likely figure; for the AN-803 example that is 23.72 ppm against 44 ppm added.
Multiply the datasheet aging per year by the years of service, or use the lifetime figure if one is given. AN-803 notes that aging is usually fastest in the first 30 to 60 days and then slows, so the linear figure is usually pessimistic.
See all free electronics tools →
ProtoFlow is free AI PCB design software: describe a circuit and get a schematic with real parts, PCB layout with an autorouter, SPICE simulation and Gerber files. Native KiCad, Altium and EAGLE import and export. Free on macOS, Windows and Linux.
Free to start. No card required.