A marketing report can be accurate and still be too late to support a decision. Spend, lead, and pipeline data arrive on different schedules, so a single “updated” label hides important gaps. A freshness service level agreement (SLA) makes those delays visible and sets a fair expectation for each report.

Set freshness targets by decision
Start with the decision the report supports. A pacing view used to adjust today’s spend needs more frequent updates than a monthly cohort analysis. Define the maximum acceptable age of each source, the report owner, and what readers should do when the target is missed.
Do not promise real-time data when the source system batches updates or the sales process takes days to record an outcome. The target should describe an achievable operating window, not an idealized technical state.
- Daily budget pacing: show the latest successful spend sync and its time zone.
- Lead routing: monitor the delay from form submission to CRM availability.
- Pipeline reporting: label the CRM snapshot date and expected lag.
Measure each stage of the data path
Record source extraction time, warehouse arrival time, transformation completion, and dashboard refresh separately. These timestamps distinguish a late source from a slow integration or a failed report refresh. Keep the source’s own “last modified” field when available; it is different from the time your pipeline ingested the record.
For each feed, define a normal range and an alert threshold. A single slow run may be a transient delay; a repeated breach signals a broken dependency or a changed API schedule.
- Track freshness at the table or source level, not only for the finished dashboard.
- Display the latest successful update beside the metric it affects.
- Log backfills so a restated number is not mistaken for a live change.
Make stale data safe to use
When a freshness target is missed, show a visible status and the time of the last successful update. Readers can then avoid treating incomplete spend as a sudden performance shift. Decide which decisions should pause, which can continue with a caveat, and who communicates the exception.
Do not silently replace missing values with zero. Zero means a measured absence; missing means the measurement is unavailable. That distinction matters in pacing, channel comparisons, and operational follow-up.
- Name an owner for acknowledging the breach.
- Keep historical values and correction notes when late records arrive.
- Review recurring breaches and adjust the source process or the SLA.
How did this article land?
Choose one reaction. You can change it anytime.
