RTC Clock Drift Calculator
Calculate real-time clock drift from oscillator error in parts per million. Find seconds gained or lost per day, month and year, actual oscillator frequency, frequency error, drift over a custom interval and required calibration correction.
drift seconds = elapsed seconds × ppm / 1,000,000.
Therefore a +20 ppm RTC gains approximately
86,400 × 20 / 1,000,000 = 1.728 seconds per day.
The sign is preserved: positive means fast/gaining; negative means
slow/losing.
—
What Is RTC Clock Drift?
RTC clock drift is the difference that accumulates between a real-time clock and an accurate reference clock. Even a small oscillator frequency error can produce noticeable time error after days, months or years of continuous operation.
RTC accuracy is frequently expressed in parts per million, or ppm, because the required frequency errors are very small compared with the oscillator’s nominal frequency.
RTC PPM Drift Formula
Drift Seconds =
Elapsed Seconds × PPM
---------------------
1,000,000The formula preserves the sign of the ppm value. A positive value describes a fast RTC that gains time, while a negative value describes a slow RTC that loses time.
How Much Is 1 PPM Per Day?
One day contains 86,400 seconds. A frequency error of one part per million therefore produces:
86,400 × 1
------------
1,000,000
= 0.0864 seconds/dayThat is approximately 86.4 milliseconds of time drift per day.
RTC Drift at Common PPM Values
| Error | Per Day | Per 30 Days | Per 365 Days |
|---|---|---|---|
| 1 ppm | 0.0864 s | 2.592 s | 31.536 s |
| 5 ppm | 0.432 s | 12.96 s | 157.68 s |
| 10 ppm | 0.864 s | 25.92 s | 315.36 s |
| 20 ppm | 1.728 s | 51.84 s | 630.72 s |
| 50 ppm | 4.32 s | 129.6 s | 1576.8 s |
20 PPM RTC Drift Example
RTC Error:
+20 ppm
Daily drift:
86,400 × 20 / 1,000,000
= 1.728 seconds
30-day drift:
2,592,000 × 20 / 1,000,000
= 51.84 seconds
365-day drift:
31,536,000 × 20 / 1,000,000
= 630.72 seconds
≈ 10 minutes 30.72 secondsWhat Does Positive PPM Mean?
A positive frequency error means the oscillator frequency is above its nominal value. The RTC therefore advances slightly faster than real time and gains time.
Nominal:
32,768 Hz
Error:
+20 ppm
Actual frequency:
32,768 × (1 + 20 / 1,000,000)What Does Negative PPM Mean?
A negative ppm value means the oscillator runs below the nominal frequency. The RTC therefore advances too slowly and loses time relative to the reference.
Error:
-20 ppm
Daily drift:
-1.728 seconds
Meaning:
RTC loses 1.728 seconds per dayRTC Frequency Error Formula
Frequency Error =
Nominal Frequency × PPM
-----------------------
1,000,000For a 32,768 Hz crystal with +20 ppm error:
32,768 × 20 / 1,000,000
= 0.65536 HzThe corresponding oscillator frequency is approximately 32,768.65536 Hz.
Why 32.768 kHz Is Used for RTCs
32.768 kHz is common in real-time clocks because 32,768 equals 2 to the power of 15. A binary divider can therefore reduce this frequency to a convenient one-second timing reference.
32,768 Hz
÷ 2¹⁵
= 1 HzCalculate PPM from Measured Clock Drift
If you measure an RTC against an accurate reference, the frequency error can be estimated from the observed time drift.
PPM =
Observed Drift
--------------
Elapsed Time
× 1,000,000Both observed drift and elapsed time must use the same time units before applying the ratio.
Measured Drift Example
RTC gains:
12 seconds
Measurement period:
7 days
Elapsed seconds:
604,800
PPM:
12 / 604,800 × 1,000,000
≈ 19.8413 ppmA compensating calibration would ideally apply approximately the opposite error, subject to the resolution and implementation of the RTC calibration hardware.
RTC Calibration Correction
If an RTC runs fast by +10 ppm, an ideal first-order frequency correction is approximately −10 ppm. If it runs slow by −10 ppm, the corresponding first-order correction is approximately +10 ppm.
Measured Error:
+12.5 ppm
Ideal Compensation:
-12.5 ppmActual calibration registers may have discrete step sizes and may add or remove periodic clock pulses rather than directly changing oscillator frequency.
Time to Accumulate One Second of Drift
The time required to accumulate a specified error can also be calculated from the absolute ppm error.
Elapsed Seconds =
Desired Drift × 1,000,000
-------------------------
|PPM|At 20 ppm, approximately 50,000 seconds of real time are required to accumulate one second of clock error, or about 13.89 hours.
Crystal Temperature and RTC Accuracy
RTC drift is not necessarily constant over every operating condition. Quartz crystal frequency can change with temperature, load capacitance, aging, manufacturing tolerance and circuit layout.
A single ppm measurement therefore describes the average error during the measurement interval rather than guaranteeing identical drift under every future condition.
Crystal Aging
Crystal oscillators can experience gradual frequency change with age. This means a device calibrated during manufacturing can develop a different average clock error after months or years of operation.
Systems requiring tighter long-term accuracy may periodically synchronize to an external time reference or use a temperature-compensated RTC.
RTC Drift vs Temperature-Compensated RTC
A basic crystal-based RTC uses the natural oscillator frequency with limited or no active temperature correction. Temperature-compensated real-time clocks can measure temperature and apply internal frequency compensation.
Their achievable accuracy still depends on the specific component, temperature range and datasheet specification.
RTC Clock Drift Calculator FAQs
How much clock drift does 1 ppm cause per day?
How much does a 20 ppm RTC drift per day?
How much does 20 ppm drift per year?
What does positive RTC ppm mean?
What does negative ppm mean?
How do I calculate ppm from measured drift?
Why are RTC crystals often 32.768 kHz?
Can RTC drift change with temperature?
Does the calculator include crystal aging?
What calibration should I use for a +10 ppm RTC?
Calculate RTC Drift and Clock Accuracy
Convert oscillator ppm error into daily, monthly, annual and custom-interval time drift, frequency offset and ideal calibration correction for RTC and 32.768 kHz clock systems.