Inbound Lead Reporting: Reports That Cause Decisions
An inbound lead report is designed backwards from a decision: name the decision, the person who makes it and the moment it gets made, then publish only the numbers that change it. In practice that is 3 to 5 figures split by one dimension, not a dashboard nobody opens between meetings.
Want this checked on your own site? Run the free AI visibility check, or order the full audit.
Inbound lead reporting is not a screen. It is the set of numbers that has to make a specific person take a specific action by a specific time, and everything else in the report is decoration that costs attention. Most reporting projects fail in the opposite order: the team picks thirty metrics a tool offers, builds a dashboard, then hopes a decision falls out.
This guide owns report composition, audience design, review cadence, and the governance of metric definitions. It does not own the metric formulas themselves. Response-time definitions belong to SLA and speed to lead, source and revenue joins belong to inbound lead attribution, assignment metrics belong to the lead routing playbook, and cost and payback belong to inbound automation ROI.
In one sentence
An inbound lead report is designed backwards from a decision: name the decision, the person who makes it, and the moment it gets made, then publish only the numbers that change that decision, split by one dimension that changes an action, with process failures shown next to outcomes and reconciliation notes attached.
Why do lead reports get ignored?
Three failures explain almost every abandoned dashboard, and none of them is about chart design.
The first is that no decision is attached. Someone asked for visibility, a screen answered, and nobody was ever going to do anything differently based on it. The second is that the numbers cannot survive one challenge. A sales lead says “that count is wrong, half of those were spam”, and because nobody wrote down what was excluded, the meeting turns into a data argument and the report loses its authority permanently. The third is that no one owns the definitions. Two people build two versions of qualified rate, both are defensible, and the organisation quietly stops citing either.
| Symptom | What it looks like in practice | Underlying cause |
|---|---|---|
| Nobody opens the dashboard | View counts drop to the person who built it | No decision attached to any panel |
| Weekly export goes unread | The file is generated, forwarded, and never cited | Report answers a question nobody owns |
| Every meeting becomes a data argument | Half the time is spent on whether the number is real | No reconciliation notes published |
| Two teams quote different numbers | Marketing and sales disagree on the same week | No named owner for the definition |
| The report grows every quarter | Panels are added, none are removed | No retirement test |
| Numbers look fine, results do not move | Green metrics, flat revenue | Reporting on volume rather than behaviour |
A dashboard does not improve performance. The meeting improves performance, and only when somebody in it is accountable for an action. That is worth saying plainly because a lot of reporting spend is justified with the opposite claim.
How do you start from the decision instead of the metric list?
Write the decision first, in one sentence, with a subject and a verb. “We move a rep off the inbound queue this week.” “We pause spend on this channel.” “We change the response window for after-hours requests.” Then work backwards to the smallest number of figures that could change the answer.
The artifact that makes this concrete is a decision card. Fill one in per decision before any chart exists.
| Decision card field | What goes in it | Example entry |
|---|---|---|
| Decision | One sentence, subject and verb | Reassign the inbound queue for next week |
| Decision owner | A named role, not a team | Head of inbound sales |
| Moment | When it actually gets made | Monday review, first fifteen minutes |
| Trigger | What makes this a live question | Attempt coverage below the internal floor |
| Evidence | The figures that change the answer | Attempts by owner, unowned count, queue age |
| Segment | The one split that changes the action | Owner, then source |
| Allowed action | What the owner may change without escalation | Queue membership and daily caps |
| Escalation | What needs a level above | Headcount, targets, definitions |
Two rules follow from the card, and both remove more content than teams expect. A metric with no decision card goes into an appendix that is available on request, not onto the report. And when two cards would be answered by the same figure, that figure appears once, in the report belonging to the more senior decision, with the junior report linking to it rather than recomputing it.
The appendix matters. Curiosity is legitimate and analysts need room to explore. The report is not that room. Keeping exploratory metrics reachable but off the main surface is what keeps the main surface credible.
Who is the report for: three audiences, three reports
There is no such thing as “the lead dashboard”. There are three reports because there are three decisions with three horizons, and merging them produces a screen that serves nobody. The operator cannot find their queue inside a trend chart; the executive cannot make a budget decision from a list of overdue records.
| Audience | Question they must answer | Horizon | Unit | Decision they own |
|---|---|---|---|---|
| Operator | What do I work on next, and what is late? | This shift | One record | Order of work, which record to touch now |
| Manager | Where is the team’s process breaking, and who needs help? | This week | One owner, one queue | Assignments, thresholds inside a band, coaching |
| Executive | Is inbound getting better, and where does money go? | Month or quarter | One channel, one segment | Budget, headcount, targets, definitions |
The three reports also differ in what a number is allowed to be. Operator numbers are counts of records, always openable as a list. Manager numbers are rates with visible denominators and a comparison to the team’s own previous period. Executive numbers are trends over enough periods to distinguish direction from noise, plus one exception with a name attached to it.
One more difference decides whether the split holds: refresh rate. Operator panels refresh continuously because the action is immediate. Manager and executive views are snapshots taken at a stated time, and the snapshot time is printed on the report. A live-refreshing executive chart is a small disaster, because the number quoted in the meeting no longer matches the number in the minutes.
What does the operator view need to show?
The operator view is a work queue with counts on it. It is not analytics, and the test is blunt: if a panel cannot be opened as a list of records the operator can act on in the next hour, it does not belong here.
| Panel | What it answers | Opens as | Owner of the definition |
|---|---|---|---|
| Unassigned now | Is anything sitting with no owner? | List of records with no owner | Lead routing playbook |
| Due this shift | What must be touched before I leave? | Task list by due time | Lead follow-up system |
| Past the response window | What is already late? | List sorted by age | SLA and speed to lead |
| No attempt logged | What has never been tried at all? | List of records with zero attempts | Lead follow-up system |
| Waiting on me | Which conversations are stalled on my side? | Records with an open commitment | CRM automation for inbound |
| Failed to write | What never reached the CRM? | Parked events queue | CRM automation for inbound |
Six panels is already generous. Most operator views can drop to four without losing anything, and the ones that grow past eight get replaced by a personal spreadsheet within a month.
Two design details separate an operator view that gets used from one that gets closed. Sort by age rather than by score, because age is what creates the loss and a score cannot be verified during a shift. And show absolute counts, not percentages: “eleven records with no attempt” produces an action, “attempt coverage 94 percent” produces a shrug.
What belongs in the manager review pack?
The manager pack exists to answer one question: where is the process breaking, and what am I allowed to change about it this week? It is a small pack, not a dashboard, and it is read before the meeting rather than projected during it.
| Object in the pack | Question it answers | What the manager may change |
|---|---|---|
| Volume with denominator, by source | Did the input change, or did we? | Nothing directly, it sets context |
| Attempt coverage by owner | Is anyone not working their queue? | Queue membership, caps, coaching |
| Response behaviour by owner and hour | When does the process slip? | Shift cover, working-hours rules |
| Qualified rate by source and tier | Is the mix changing, or the judgement? | Qualification thresholds inside a band |
| Unowned and stale record counts | Is the routing layer leaking? | Fallback queues, escalation routes |
| Exceptions list, named | Which specific records went wrong? | Individual reassignment, remediation |
The exceptions list is the part teams cut first and should cut last. Aggregates tell a manager that something is off. A list of eight specific records with what happened to each one tells them what to change, and it is the only part of the pack that produces a concrete instruction.
Note what the manager may not change: metric definitions, targets, and headcount. Those live one level up, and letting them move weekly is how a series becomes uncomparable.
What is the minimum executive view, and why does a fourth chart weaken it?
The minimum executive view has three objects.
First, the outcome trend: won outcomes from inbound over enough periods to see direction rather than noise. Second, the origin of those outcomes at the level of a decision the executive actually controls, which usually means channel or segment rather than campaign. The join behind that number is not defined here; it belongs to inbound lead attribution. Third, one named broken thing, with an owner and a date. Not a list of risks. One.
Adding a fourth object almost always weakens the view, and the reason is mechanical rather than aesthetic.
| What the fourth chart usually is | What it does to the meeting |
|---|---|
| A second cut of the same outcome | The room reconciles two stories instead of choosing |
| A volume chart next to a revenue chart | The discussion drifts to input, which nobody in the room owns |
| A conversion funnel | Every stage definition becomes negotiable inside the meeting |
| A quality score composite | The composite hides which component moved |
| A per-rep breakdown | The executive starts managing individuals over their manager’s head |
| A forecast | The meeting becomes about the forecast method |
Every added object also adds a definition somebody has to defend, and defending definitions is what consumes the meeting. Three objects can be defended in ninety seconds. Six cannot.
If an executive asks for a fourth number, the right response is usually not to add a panel. It is to write a decision card for the question they are actually asking, and to find out whether it belongs to a different meeting entirely. Half the time the real request is diagnostic, which is the domain of the inbound lead audit, not of a recurring report.
Leading and lagging signals: why a volume report decides nothing
A volume-only report is the most common failure in inbound reporting because volume is the easiest number to produce and the hardest to act on. It moves for reasons outside the room: a competitor’s campaign, seasonality, a broken form. Reporting it alone gives a team something to discuss every week and nothing to change.
Useful reports pair leading signals, which describe behaviour you control this week, with lagging signals, which confirm whether the behaviour paid off later.
| Signal | Type | What it tells you | Definition owned by |
|---|---|---|---|
| Accepted request volume | Context | Whether the input changed at all | Website lead capture |
| Attempt coverage | Leading | Whether the queue is being worked at all | Lead follow-up system |
| Response behaviour | Leading | Whether the promise is being kept | SLA and speed to lead |
| Unowned record count | Leading | Whether assignment is leaking | Lead routing playbook |
| Qualified rate | Mixed | Whether mix or judgement moved | MQL to SQL handoff |
| Meetings held | Mixed | Whether conversations become commitments | Lead follow-up system |
| Won outcomes by source | Lagging | Whether any of it produced revenue | Inbound lead attribution |
| Cost per won outcome | Lagging | Whether the economics hold | Inbound automation ROI |
Read the pairing rather than the individual line. Volume up and attempt coverage down means the team is drowning, and the action is capacity. Volume flat and qualified rate down means the mix changed or the definition drifted, and the action is a definition check before a coaching conversation. Volume down and won outcomes flat is often the healthiest picture on this list, because it usually means the capture layer stopped accepting requests that were never going to convert.
The old evidence on response behaviour is worth quoting once for the same reason. A Harvard Business Review audit published in 2011 covered 2,241 US companies and found a median first response of about 42 hours among firms that responded at all. It is one sample from a long time ago and is not a current benchmark. What it establishes is that unmeasured inbound handling degrades much further than anyone in the organisation believes, which is the argument for reporting behaviour rather than volume.
Which segmentation actually changes a decision?
Segmentation is where reports quietly become unusable. Every dimension is available, every split looks insightful, and the report ends up with a filter panel that nobody configures the same way twice.
The test is a single question: if this split came out differently, would someone do something different? If not, the dimension belongs in the appendix.
| Dimension | Decision it can change | Minimum condition | Failure mode |
|---|---|---|---|
| Source | Where spend and effort go | Controlled vocabulary, no free text | Splitting so fine that every cell is tiny |
| Tier or fit | Which requests get the fast path | Written definition with an owner | Tier assigned after the outcome is known |
| Owner | Coaching, queue membership, caps | Enough volume per owner to compare | Ranking people on a handful of records |
| First-touch channel | Which entry points to invest in | Channel captured at entry, not inferred | Confusing channel with campaign |
| Time of arrival | Shift cover and after-hours policy | Timestamps present on every record | Reading a pattern out of two weeks |
| Request type | Routing rules and qualification | Classified at capture | A category list that grows monthly |
Two rules keep segmentation honest. Publish the denominator next to every rate, always, because a rate on eleven records is a story and not a measurement. And when a cell falls below the volume where the rate is meaningful for your business, show the count instead of the rate rather than hiding the cell, because hidden cells are where quiet problems live.
Resist the fifth dimension. Four splits already produce more combinations than a weekly meeting can inspect, and the marginal dimension usually exists to satisfy a curiosity rather than a decision.
How do you report process failures next to outcomes?
This is the section most vendor templates skip entirely, and it is the one that changes behaviour fastest. Outcome metrics tell you the result. Process failure metrics tell you that the machine is broken in a way that guarantees a bad result later, and they are visible today rather than at the end of the cycle.
Put them on the same surface as the outcomes. A separate “data quality dashboard” is read by the operations team and by nobody who can authorise a fix.
| Failure metric | What it counts | Why it belongs next to outcomes | Definition owned by |
|---|---|---|---|
| No-attempt rate | Accepted requests with zero logged contact attempts | A request nobody tried cannot be judged on quality | Lead follow-up system |
| Unowned records | Live records with no current owner | Every one is an unstarted clock | Lead routing playbook |
| Failed writes | Events parked after retries exhausted | Requests that exist nowhere a human looks | CRM automation for inbound |
| Records missing a timestamp | Records that cannot be placed in time | They silently disappear from every time-based figure | SLA and speed to lead |
| Records missing a source | Records that cannot be attributed | They make channel comparisons unsafe | Inbound lead attribution |
| Duplicate suppression count | Events dropped as repeats | A spike means a channel started misbehaving | CRM automation for inbound |
The fourth row deserves special attention because it is the one that corrupts everything above it. A record with no usable timestamp is not counted as late, not counted as on time, and not counted at all in any period comparison. Response reporting on a population that silently excludes its own worst cases is the most flattering report a team can build by accident.
Operator note. Report process failures as absolute counts with the records attached, never as a percentage on its own. “Ninety-seven percent write success” sounds like a healthy system. “Forty-one requests never reached the CRM this week, here they are” produces a fix by Thursday. The same number, two different meetings. If any of these counts sits at exactly zero for several weeks in a row, do not celebrate: inject a deliberately broken test record and confirm the counter can still move. A metric that cannot go up is not measuring anything.
Which guide owns which metric definition?
This report is a composition layer. It arranges numbers other parts of the system define, and it never redefines them, because two definitions of the same metric in two documents is how an organisation loses the ability to compare quarters.
| Metric family | Owned by | This report’s job |
|---|---|---|
| Response time, clock start and stop, escalation | SLA and speed to lead | Show behaviour by owner and hour |
| Source model, identity, revenue join | Inbound lead attribution | Show outcomes by channel and segment |
| Assignment, acceptance, reassignment, fallback | Lead routing playbook | Show leakage and unowned counts |
| Cost, payback, economics of automation | Inbound automation ROI | Show cost per outcome as a lagging line |
| Qualification thresholds and stage entry | MQL to SQL handoff | Show qualified rate with its denominator |
| Record integrity, writes, dedupe, fields | CRM automation for inbound | Show failure counts next to outcomes |
| Capture completeness and form behaviour | Website lead capture | Show accepted volume as context |
| One-off diagnosis of a broken funnel | Inbound lead audit | Hand the question over, do not absorb it |
The distinction in the last row is the one that keeps a recurring report small. A report answers a repeated question on a schedule. An audit answers a one-time question about why something broke. When a recurring report starts growing panels to explain an anomaly, the anomaly needed an audit, and the panels will still be there a year later.
Where the numbers come from is a related question with a short answer. Analytics platforms describe traffic sources; Google documents its traffic-source dimensions for exactly that purpose. CRMs describe what happened to records after they arrived, including native ownership and assignment behaviour, as in Salesforce’s lead assignment rules and HubSpot’s documentation on setting a record owner. Neither side is wrong when they disagree. They are counting different populations, which is exactly what the reconciliation notes are for.
What review cadence works, and what may each meeting change?
Cadence is not a calendar preference. It follows two constraints: how fast the underlying signal can actually move, and what the room is allowed to change. A weekly meeting that reviews a metric which needs a quarter to move produces noise-chasing, and a quarterly meeting that reviews queue health produces nothing at all.
| Meeting | Reads | May change | May not change |
|---|---|---|---|
| Shift check | Operator view | Order of work, immediate escalation | Anything structural |
| Weekly review | Manager pack | Assignments, caps, thresholds inside a band, coaching | Definitions, targets, headcount |
| Monthly review | Outcomes and cost lines | Channel effort, routing rules, thresholds band | Metric definitions without a change entry |
| Quarterly review | Trends and definition change log | Definitions, targets, headcount, report scope | History already published, without restatement |
The intervals above are a starting template rather than an industry standard, and the useful discipline is the right-hand column rather than the frequency. Write down what each meeting may change, and the meetings stop overlapping. Without that column, every meeting drifts upward: the weekly review starts relitigating targets, the quarterly review starts discussing individual records, and neither produces a decision.
Two habits make the cadence survive contact with a busy quarter. Every meeting ends with a written decision or an explicit “no change”, both recorded, because an unrecorded “we should look at that” is the seed of the next unused report. And every meeting names the person who acts and the date they report back, on the same line as the decision.
What reconciliation notes should ship with the report?
A number in a meeting will be challenged. The first challenge decides whether the report keeps its authority for the next year. Reconciliation notes are the short, published text that answers the obvious objections before they are raised, and they sit with the report rather than in a separate document nobody opens.
| Note | What it states | The challenge it retires |
|---|---|---|
| Snapshot time | The exact moment the figures were taken | ”I ran it this morning and got a different number” |
| Population | What counts as an accepted request here | ”Half of those were spam” |
| Exclusions | What was removed and how many records | ”You are counting test submissions” |
| Known gaps | Where analytics and CRM disagree, and roughly by how much | ”Analytics says a different number” |
| Late-arriving data | Which figures move after the snapshot and for how long | ”Last week’s number changed” |
| Definition version | Which version of each definition was applied | ”That is not how we counted it before” |
| Restatement policy | Whether history is restated when a definition changes | ”Why does the old chart look different?” |
Keep it to a paragraph or a short block. This is a working note, not documentation. A realistic example reads: figures taken Monday at 09:00 local; population is accepted requests after spam filtering; 37 test submissions excluded; CRM count runs below the analytics form-submission count because analytics counts submissions and the CRM counts deduplicated records; definitions at version 4, unchanged since March.
The last line of that example is doing more work than it appears to. Naming the reason two systems disagree, in one sentence, converts a recurring argument into a known fact. Teams that skip it re-fight the same battle every month, and the report is the casualty.
Who owns metric definitions, and what goes in the change log?
Definition ownership is the difference between a reporting layer and a pile of saved filters. Every metric on the report has one named owner, a version, and an effective date. Not a team: a role, held by a person who can be asked what the metric means and can answer without opening a query.
| Governance element | Rule |
|---|---|
| Owner | One named role per definition, listed on the report |
| Version | Incremented on any change to the population or the calculation |
| Effective date | The date the new version starts applying |
| Change request | Written, with the reason and the decision it improves |
| Approval | The meeting that is allowed to change definitions, and no other |
| History | Restated, or the series is broken visibly on the chart |
| Retirement | Deprecated with a date, never silently deleted |
The change log entry itself is short and lives next to the report: what changed, why, who approved it, the effective date, and whether history was restated. Five fields. Teams that make this a heavyweight process end up with an unmaintained log, which is worse than none because it implies a rigour that is not there.
One rule prevents most silent drift: a definition that exists only inside a saved report filter is not governed. If the only place the qualified-lead population is defined is the filter on a chart, then anyone with edit access can change the meaning of last quarter without anyone noticing. Write definitions in text, next to the report, and treat the filter as an implementation of the text.
The NIST AI Risk Management Framework makes a point that applies well beyond AI: an automated output is governable only when it is traceable and measurable. A metric whose definition cannot be traced to an owner, a version, and a date is not governed, whatever the chart looks like.
How do you know when a report should be retired?
Reports accumulate. Panels get added during a crisis and stay for years. Nobody removes anything because removal feels like losing information, so the surface grows until the important numbers are surrounded by numbers nobody reads.
Three questions retire a report faster than any review process.
| Test | How to check | Retire if |
|---|---|---|
| Was it cited? | Search the last cycle of meeting notes for the figure | No decision referenced it |
| Was it opened? | Check who viewed it, excluding its author | Only the author and an automation |
| Does removal hurt? | Turn it off for one cycle with a visible notice | Nobody asks where it went |
The third test is the decisive one, and it works because it is cheap. Replace the report with a short notice saying it has been paused and where to ask for it. If a request arrives, restore it and note who needed it, which usually reveals a decision card that was never written down. If nothing arrives within one full cycle, delete it and archive the query.
Two exceptions are worth protecting. Compliance and audit reporting is retained even when unread, because the reason it exists is not that someone acts on it weekly. And a process failure counter sitting at zero is not unused: it is a smoke detector, and the correct treatment is a periodic test, not removal.
The reverse case matters too. When a decision starts being made regularly without a report, that decision needs a card and a number, and it is usually more valuable than three panels currently on the screen.
What is the implementation sequence for a reporting layer?
Order matters here because building the surface first is what produces the screen nobody uses.
- List the decisions. Interview the operator, the manager, and the executive separately and write one card per decision they actually make. Expect fewer than ten in total.
- Name the owners. Every card gets a named role and a moment when the decision is made. A card with no moment is not a decision, it is an interest.
- Map metrics to owners. For each figure a card needs, find the guide or document that defines it. Where no owner exists, define it and assign one before building anything.
- Check the inputs. Confirm the underlying data exists: timestamps present, source populated, owner set, attempts logged. Missing inputs become process failure metrics, not blockers.
- Build the three surfaces. Operator queue, manager pack, executive view, in that order, because the operator view improves data quality that the other two depend on.
- Write the reconciliation notes before the first meeting, not after the first challenge.
- Run the cadence for one cycle with the “may change” column enforced, and record every decision or explicit no-change.
- Review usage after two cycles. Apply the retirement tests, remove what failed them, and open a change log for the definitions that survived.
Step four is the one that gets skipped, and skipping it is how a beautiful report ends up computed on a population that quietly excludes its worst records. Step eight is the one that gets postponed forever, which is how a reporting layer becomes the thing that needs a reporting project two years later.
What is the operator red flag?
The red flag is a report with no name attached to any number. Not an unowned metric definition, though that is bad enough: an unowned decision. When you ask “who acts if this line goes the wrong way” and the answer is “we would discuss it”, the report is already decoration, and adding panels will not fix it.
The other version of the same flag is a meeting that consistently ends without a recorded decision or an explicit no-change. Watch three of those in a row and the report has stopped functioning, regardless of how good the data is.
The fix is small and unglamorous. Take the six numbers currently on the screen, write a decision card for each, delete the ones that fail, and put a name and a date on what remains. Metric definitions stay with their owning guides: clocks with SLA and speed to lead, source and revenue with inbound lead attribution, assignment with the lead routing playbook, economics with inbound automation ROI, and the boundary between systems with Lead Hub vs CRM. Where the reporting layer sits in the wider system is shown on the OperStack system map, scope options are on the pricing page, and if you want the decision cards and the reconciliation notes written against your own data rather than an example, a lead operations audit returns the three surfaces defined, the metric ownership map filled in, and the list of panels to delete first. For smaller teams that need one process fixed rather than a reporting layer, see the business automation agency page.
Map your stack
Free written assessment: where leads leak between site, chat and CRM, with a fixed price for the fix.
Frequently asked questions
- What metrics should a lead report include?
- Only the metrics attached to a decision somebody in the room is allowed to make. In practice that is a small set: volume with its denominator, response behaviour, attempt coverage, qualified rate, and won outcomes, each split by one dimension that changes an action. Every other number belongs in an appendix that supports a question, not on the report itself.
- What should a sales dashboard show an operator during a shift?
- A queue, not analytics. Show what is unassigned right now, what is due in this shift, what has passed its response window, and what has no logged attempt. Each panel opens as a list of records the operator can act on immediately. Trend lines and conversion rates belong to the weekly review, because nothing in a shift can be decided from them.
- How often should you review lead metrics?
- Match the cadence to the decision, not to the calendar. Queue health is watched continuously because the action is immediate. Team behaviour and thresholds are reviewed on a weekly rhythm because that is roughly how long a change takes to show. Definitions, targets, and budget move on a monthly or quarterly rhythm. Pick intervals your team can actually hold.
- Why do lead reports get ignored?
- Because no decision is attached to them, the numbers cannot survive one challenge, or nobody owns the definitions. A report that answers a question nobody was going to act on is a screen. When the first sceptical question in a meeting cannot be answered on the spot, the room stops using the report and starts arguing about the data instead.
- How do you report on lead quality without inventing a benchmark?
- Report quality as a rate with its denominator, split by the dimension you can act on, and compare it against your own previous period rather than an industry figure. State the definition of qualified in the report itself and link to the guide that owns it. Any absolute quality figure copied from a vendor study is decoration.
- What should executives see about inbound leads?
- Three objects: the outcome trend over enough periods to show direction, where the outcomes came from at the level of the decision they control, and one named broken thing with an owner and a date. Adding a fourth object usually turns a decision meeting into an interpretation meeting, because the room starts reconciling two stories instead of choosing.
- How do you keep lead metric definitions consistent?
- Give every definition one named owner, a version, and an effective date, then publish a change log next to the report. A change to a definition either restates history or starts a new series with a visible break. Definitions that live only inside a saved report filter drift silently, and the drift is discovered during an argument.