The lookback window: the assumption inside every conversion figure
In short
A lookback window is the rule deciding which earlier ad interactions may claim a conversion. It has 2 independent settings — how far back the system looks, and which interaction types qualify, usually a click or an impression. Two platforms with different settings are not disagreeing about one number; they are counting different event classes.
Key takeaways
- Length and interaction type are set separately, so 2 windows can differ on either axis or both.
- A view-through window admits conversions with no interaction at all, which is a different event class entirely.
- On 1 illustrative dataset, moving from a 1-day click rule to a 28-day click plus 7-day view rule credits 74% more conversions from identical spend.
- State the window per channel on the report, and treat a change to it as a restatement rather than a performance move.
A lookback window is a counting rule: how far back from a conversion the system will look for an ad interaction, and which interactions are allowed to claim it. Both parts are set independently, and neither is a property of the customer's behaviour. They are decisions about bookkeeping that determine the total on the report.
This is why 2 platforms report different conversion counts for the same week without either being broken. They are answering different questions. Until both windows are stated, the numbers cannot be compared, added, or used to rank channels.
Three settings hiding inside one number
Length is the obvious one, and the one most people mean by attribution window. The other 2 do more damage precisely because they are rarely discussed.
- Length. How many days before the conversion an interaction may sit and still claim it. Longer windows always credit more conversions, never fewer.
- Interaction class. A click is a deliberate act by the person. An impression is something that happened near them. Some platforms add an intermediate class for a video watched past a threshold. These are different events and a window admits them separately.
- Date basis. Whether the conversion is reported against the day it happened or the day of the interaction that earned it. This changes nothing about the total for an all-time count and everything about a weekly series.
- Precedence. When both a click and an impression qualify, which one takes the credit, and whether the other is discarded or counted separately.
No setting here is stable across vendors, and none is safe to assume from memory: defaults change, and the platform's own documentation is the only place worth reading for current behaviour. What survives that churn is the mechanism, so this page describes the classes rather than naming anyone's default.
The same 120 sales, counted five ways
Take one illustrative month: 120 sales, one channel, one fixed budget. The interactions preceding those sales do not change. Only the rule for counting them does.
| Counting rule | Conversions credited | Share of the 120 sales | What the extra credit is |
|---|---|---|---|
| 1-day click | 62 | 52% | Same-day clickers only |
| 7-day click | 80 | 67% | Adds 18 who clicked earlier in the week |
| 28-day click | 92 | 77% | Adds 12 on a longer consideration cycle |
| 28-day click, 1-day view | 101 | 84% | Adds 9 who saw an ad and never clicked |
| 28-day click, 7-day view | 108 | 90% | Adds 7 more view-only, none of whom interacted |
From the top row to the bottom, credited conversions rise by 74% and cost per conversion falls by more than 40%, with identical spend and identical sales. Nothing happened in the market. If those 2 rows sat in 2 different platform reports, a media team would rationally move budget toward the channel that is merely counting more generously.
Two channels reported under different windows are not 2 measurements of performance. They are 2 different definitions of the word conversion, presented in the same column.
What has to be true before 2 channels can be compared
The only durable fix is to stop comparing platform-reported figures and recount from your own event data under a single rule you control. That means keeping the raw touch history rather than only the credited totals, because a window can be re-applied to raw interactions and cannot be recovered from a summarised count.
- Record every qualifying interaction with a timestamp, a channel, an identifier and its class. Without the class, a click and an impression become indistinguishable a month later.
- Define one house rule and version it. One length, one set of admitted classes, one precedence order, written down with the date it took effect.
- Recount conversions from the raw table under the house rule, and keep the platform figure beside it as a second column rather than replacing it.
- Reconcile the difference once, then monitor it. A stable gap is a definitional difference to document; a moving one is a defect to chase.
- Re-verify after every connector change, because the window is a parameter of the request and defaults drift — the risk described in a connector is a contract with someone else's API.
Writing the window into the report, not the appendix
Put the rule on the page: window length, admitted classes and date basis, per channel, in the same view as the numbers. A report whose definition lives in someone's memory produces an argument every time a platform changes a default. The reporting layer that carries those definitions with the figures is ordinary internal tooling, and it is cheaper than the meeting it prevents.
Treat a change to the window as a restatement: recount history under the new rule, publish both series for a period, and say plainly that the movement is definitional. It matters beyond the report, because an outcome column assembled under an inconsistent window feeds every downstream model, and it is one of the quieter reasons a mix model returns something nobody believes, traced in the model that hands a channel a negative coefficient. The reason recent weeks look weak is conversion lag rather than the window, covered in how conversion lag bends a weekly read. All of it sits inside the attribution, incrementality and mix work we do for marketing and advertising teams.
Frequently asked questions
Short answers to the follow-ups this page tends to raise.
What is the difference between a click window and a view window?
A click window credits conversions to a deliberate act by the person, while a view window credits conversions to an ad that was merely served near them. They admit different event classes, so switching a view window on adds conversions that had no interaction at all, and the size of that addition depends entirely on how much impression volume the channel buys. Report the 2 separately if you report the view-through figure at all.
Why did our conversion count change when the attribution window changed?
Because the window is the counting rule, so changing it re-counts history rather than measuring anything new. A longer window credits more conversions and a shorter one credits fewer, with no change in customer behaviour. The correct response is to restate the comparison period under the new rule and publish both series for a while, so that nobody reads a definitional shift as a performance shift.
Can conversion counts from two different platforms be compared directly?
No, unless you know both windows and they match on length, admitted interaction classes and date basis. In practice they rarely match, which is why the same campaign can look twice as efficient in one report as another. The durable answer is to recount from your own event data under one house rule and keep the platform-reported numbers as a secondary column for reconciliation.
- attribution
- measurement
- reporting
- conversion tracking
The work behind this page
Builds from our portfolio that this page draws on.
PipelineIQ
An AI SDR platform that scores every lead for fit, runs multichannel sequences across email, LinkedIn and call, drafts the replies, and books the meeting.
Sales AISupport Pulse
AI ticket triage and drafted replies for SaaS support teams — cut first response time and stop SLA leaks.
SaaS ToolsRead next
- Adstock: the assumption that last week's spend is still selling this weekAdstock carries a share of this week's media into next week's model input. The half-life is chosen, rarely identified from the data, and it moves the answer.definition
- The model hands a channel a negative coefficient nobody believesAn implausible coefficient is usually a statement about your spend history, not about the channel. Five causes, the checks that separate them, and where each branch ends.diagnostic
- The test finished and the confidence interval still straddles zeroAn interval containing zero can mean the channel does nothing, or that the test was never able to see an effect this size. One calculation separates them before anyone moves budget.diagnostic
- A slice of events lands before the visitor has answered the bannerEvents arriving with an absent consent field are not a compliance abstraction. They are a race between two scripts, and the race has a rate you can measure this afternoon.diagnostic
- Click identifiers: the URL parameters that let a server-sent conversion find the ad that caused itA campaign tag describes where traffic came from. A click identifier is the key that joins a sale back to a specific click — and only one of the two is load-bearing.definition
- Consent state: a typed field on each event, not a switch on the pageThe pageview before the banner answer and the purchase after it are both correct, and they carry different consent values. That only works if consent travels per event.definition
Working on something in this space?
Tell us where you are in a sentence or two. We'll tell you honestly whether we're the right team, and what a sensible first slice of the work looks like.
Start the conversation