Crystal PPM Calculator

ppm ↔ frequency deviation (Hz) and the resulting clock drift per day and year.

Edit ppm or Δf — the other follows. Common parts: 32.768 kHz (RTC), 8/16/25 MHz (MCU).

Frequency range and drift

From ppm to Hz to lost seconds

Parts-per-million is just the fractional error of the oscillator, so the frequency spread is

Because a fractional frequency error is also a fractional time error, the same ppm tells you how fast a clock drifts:

Datasheets usually list initial tolerance, temperature stability and aging separately — sum them for the worst case. Add the load-capacitance "pulling" error too if your CL doesn't match the crystal's spec.

Frequently asked questions

How do I convert crystal ppm to Hz?

Δf = f0 × ppm ÷ 1,000,000. For an 8 MHz crystal at ±20 ppm that's 8,000,000 × 20 / 1e6 = ±160 Hz, so the real frequency lands between 7,999,840 and 8,000,160 Hz.

How much time does a crystal drift per day?

A clock error in ppm equals microseconds of drift per second, so drift ≈ ppm × 0.0864 seconds per day. A ±20 ppm part can be off by about ±1.7 s/day, or roughly ±10.5 minutes per year.

What does ppm mean for a crystal?

Parts per million is the fractional frequency error: 1 ppm is 0.0001%. A datasheet often splits it into initial tolerance (at 25 °C) plus temperature and aging terms — add them for the worst-case total ppm.

How accurate does my crystal need to be?

UART links tolerate roughly ±2–3% total between both ends, so almost any crystal works. USB needs ≤ ±0.25% (2500 ppm) for full-speed, while a real-time clock wants a 32.768 kHz crystal at ±20 ppm or better to keep good time.