How long after an ad click can you upload a conversion? Google, Meta and LinkedIn windows compared
Short answer
Google Ads: 90 days from the click (63 for enhanced conversions for leads). LinkedIn: 90 days old. Meta counts from the event, not the click: events older than 7 days are rejected.
A lead clicks an ad three weeks ago. Today they buy. Can the ad platform still credit it?
It depends on the platform, and the limits are easy to mix up because they measure different things. Getting this wrong is behind a lot of "it doesn't work" threads, so let me lay it out clearly.
Google Ads: it ignores offline conversions uploaded more than 90 days after the click. For enhanced conversions for leads, the window is 63 days. The clock starts at the click.
LinkedIn: it accepts conversions up to 90 days old, and CSV rows older than that are dropped.
Meta: this one is different, and it's the one people trip over. The limit isn't about the click. Meta rejects events sent more than 7 days after they happened. Then it matches the event to a person who interacted with your ad. The clock starts at the event, not the click.
So the same three-week-old click behaves three different ways. On Google, it's fine as long as you kept the click ID. On LinkedIn, it's fine too. On Meta, what matters is that you send the sale within 7 days of it happening, and that it carries a good match key, not how old the click was.
Here's a decision guide by sales cycle length. Under 7 days: any process works, even a daily file. 7 to 63 days: Google and LinkedIn are fine, Meta needs each stage sent promptly, so avoid batches. 63 to 90 days: only click ID uploads on Google still reach, so protect the click ID above everything. Over 90 days: no platform will credit the closed deal, so send an earlier stage, like booked or qualified, while the click is still in range.
A common trap: measuring your cycle as an average. If your average is 40 days but a quarter of your deals take 100, that quarter is invisible to every platform, and those are often your biggest deals. Look at the longest cycle that matters, not the mean.
Three made-up sales from the same campaign make it concrete.
Sale A: click on day 0, sale on day 5. Every platform can credit it.
Sale B: click on day 0, sale on day 50. Google and LinkedIn can credit it if you kept the click ID and send it by day 90. Meta can only take it if you send the sale within 7 days of day 50, which means it has to go out promptly, not in next month's file.
Sale C: click on day 0, sale on day 120. No platform will credit the closed sale, because the click is out of range everywhere. The only way the campaign learns anything from customer C is if you sent an earlier stage while the click was still in range, like a booked call on day 30.
Notice what this says about batches. They hurt sale B on Meta, and they can't help sale C anywhere. Only live sends and earlier stages fix both.
Where are you losing sales to these windows? Long B2B cycles, big-ticket purchases, seasonal leads?
DataCops in short
For this question: DataCops tracks each platform's window for you and shows held and skipped sends with the reason, so a send that falls outside a window does not vanish silently.
DataCops is a tool that makes the ads learn from real sales: it sends booked, showed, won and paid stages from your CRM back to your ad platforms, gives every visit a bot verdict with a Real people only switch per platform, warms up new campaigns with your existing customers, and logs every send. It is not an attribution report.
How DataCops does it
- The sale after the form. HighLevel natively (lead, booked, showed, won with value, paid; cancelled, no-show and lost are never sent), any other CRM through a private webhook, matched to the click by click ID or hashed email and phone.
- The click is kept on the server. Click IDs are stored for up to 90 days, so a deal that closes weeks later still finds its click.
- Real people only. Every visit gets a bot verdict against 360+ billion IPs and 350+ monitoring points, with a Real people only switch per ad platform, off by default. CRM events carry no bot flag.
- Counted once, logged every time. Pixel and server events share an event ID, and a delivery log shows each send as sent, held, skipped or failed, with the reason.
- One script, one DNS record. Collection runs on your own domain; with DNS on Cloudflare, the free Worker reads the click at the edge before the page loads.
Best for: ad-funded businesses whose sales close in a CRM or on a call: clinics, home services, agencies, B2B and lead gen.
Ads Warmup: tell the ads who pays
Ads Warmup, DataCops' flagship feature, sends customers you already have to Meta, Google Ads and TikTok before a new campaign spends: upload a CSV (only email is required, up to 20,000 rows), see a 0 to 10 match score per person, pick the event, and send. Rows are dated when you send, and Google Ads credits only people who clicked a Google ad. Preview is free; sending needs a paid plan. Check your own consent basis for the list first. See Ads Warmup.
Ways to do this job
| Option | Best for |
|---|---|
| DataCops | CRM stages to Meta and Google Ads, with a bot verdict and a delivery log |
| Zapier or Make | One simple CRM-to-ad flow you build and maintain |
| Direct API upload | Teams with an engineer |
| Manual CSV upload | Occasional batches |
When not to use DataCops
- You want a reporting dashboard. DataCops cleans and sends what goes into your ads. It is not a multi-touch reporting layer.
- Your sales never leave one store checkout. If everything happens in one checkout, the platform's own pixel plus server events may be enough.
Sources and further reading
More on this: LinkedIn Conversions API, and the complete guide to offline conversion tracking.
Simple habit: write the three numbers on a sticky note. 90 for Google clicks, 90 for LinkedIn, 7 days for the Meta event itself. Most "it doesn't work" threads are one of those.