What your cookie lifetime actually becomes
The expiry you set is a request, not an instruction. Enter what you configured and how the cookie is set, and this shows what each browser will actually apply — including Safari's seven-day cap on anything written through JavaScript, which is the reason attribution disappears on any consideration window longer than a week and why a two-year cookie can live seven days for a third of your traffic.
Free30 minutesNo obligation
What your cookie lifetime actually becomes
The expiry you set is a request, not an instruction. Enter what you configured and how the cookie is set, and this shows what each browser will actually apply — including Safari's seven-day cap on anything written through JavaScript, which is the reason attribution disappears on longer consideration windows.
Two years is 730. GA4’s default is 730.
Safari (macOS + iOS)
7 daysyou asked for 730
ITP caps cookies written through document.cookie at 7 days, whatever expiry you request.
Chrome, Edge, Firefox
400 daysyou asked for 730
Truncated to the 400-day maximum browsers apply under RFC 6265bis.
The practical consequence: on a consideration window longer than a week, the click is forgotten before the purchase happens for every Safari visitor. That’s the main technical reason server-set first-party cookies keep attribution that browser-set ones lose — and the only way to confirm it on your own site is to set a cookie, wait more than seven days, and check it again in Safari on a real device. Chrome will not reproduce the problem.
Cookie lifespan · what breaks
What this tool is for — Cookie lifespan
- 01
Attribution vanishes on longer journeys
And you suspect the cookie.
- 02
You're weighing server-side
And want to see what the difference buys.
- 03
Someone told you cookies last two years
And you'd like to check.
Cookie lifespan · the fix
What you get out of it — Cookie lifespan
The effective lifetime per browser
Against what you requested.
The difference between script and server-set
Side by side.
The reason for each cap
Named, not just applied.
Cookie lifespan · architecture
Why the expiry you set is rarely the one you get — Cookie lifespan
Cookie lifetime is negotiated, not declared, and nothing reports the outcome.
- 1
Safari caps script-set cookies at seven days
Whatever you requested. On a six-week consideration window the click is long forgotten before the purchase.
- 2
The cap doesn't apply to HTTP-set cookies
A cookie set in a response from your own subdomain is a different mechanism, not a loophole.
- 3
Everything is capped at 400 days
Under RFC 6265bis, browsers truncate anything longer without telling you.
- 4
Chrome won't reproduce the problem
Which is why setups that test fine in development lose attribution in production.
Cookie lifespan · diagnose
What this tool cannot tell you — Cookie lifespan
Stated up front, because a tool that implies more confidence than it has is worse than no tool. These are checks you have to run yourself.
- 01
What your actual cookies do
It's arithmetic on published caps. It can't read your site.
- 02
Whether the cookie survived
The only real test is setting one, waiting more than seven days, and checking in Safari on a real device.
- 03
Current browser behaviour
Tracking-prevention rules change without much notice. Verify before building on this.
- 04
Whether you should be setting it at all
Consent applies regardless of lifetime.
Cookie lifespan · prove
How to confirm the result — Cookie lifespan
Against your own records, not against the tool's output.
Source of truth
the actual cookie expiry read in the browser, on a real device
- Actual expiry read in Safari rather than the configured value.
- Persistence confirmed more than seven days after being set.
- Cookies confirmed set via Set-Cookie where server-side was used.
- Nothing set when consent is denied.
- Reconciled over a fully closed window, matched per record rather than on totals.
- Re-checked after your next site release, which is when most breaks happen.
Cookie lifespan · free audit
What we check in the free audit
- What your actual cookies do
- Whether the cookie survived
- Current browser behaviour
- Whether you should be setting it at all
Checked against
the actual cookie expiry read in the browser, on a real device
Free30 minutesNo obligation
Cookie lifespan · when not to buy
Why this isn't gated — Cookie lifespan
There's no email form in front of it, and that's deliberate.
- A tool you have to pay for with your contact details is a lead form wearing a costume. If this is useful, it should be useful without a transaction.
- Everything it does runs in your browser. There is no endpoint, so there is nothing for us to collect even if we wanted to — open your network tab and check.
- It will tell you when you don't have a problem. That outcome costs us a sale and happens regularly, which is the point of publishing it rather than putting it behind a call.
- If it does find something and you'd rather fix it yourself, the reference pages on this site cover the how. Hiring us is one option, not the conclusion.
Cookie lifespan · what we deliver
What it checks — Cookie lifespan
Safari's script cap
Seven days on anything written via document.cookie.
The 400-day maximum
Applied by all major browsers under RFC 6265bis.
Server-set exemption
From the script cap, because it's a different mechanism.
Truncation
When you request more than the browser will honour.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
If the tool found something and you'd rather not fix it yourself: we repair the root cause in your existing setup and verify it on a live conversion.
- Root cause fixed, not worked around
- Verified on a live conversion
- Reconciled against your own records
- Written handover
1st-party server-side
Recommended$800One-time fee · most popular
Removes the class of failure rather than the instance. Money events from your own records through a first-party container on your subdomain.
- First-party server container on your own subdomain
- Events from your records, not the browser
- Deduplicated on a shared event ID at every destination
- First-party cookies beyond Safari's 7-day cap
- 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid channel server-side plus the offline loop, with monitoring so the next break surfaces in days rather than at quarter end.
- Everything in 1st-party server-side
- Pinterest, Snapchat, Reddit and LinkedIn CAPI
- CRM and offline conversion loop
- Refunds and cancellations corrected wherever each platform allows it
- Monitoring on every destination
FAQ
Cookie lifespan questions, answered
Safari's ITP caps cookies written through JavaScript at seven days regardless of the expiry you set. It's the most common cause of lost attribution on longer journeys.
They avoid the seven-day script cap, because they're set through a different mechanism. They're still subject to the 400-day maximum, and consent still applies.
Set the cookie, wait more than seven days, and check it in Safari on a real device. Chrome won't show you the problem.
It reflects behaviour as we last verified it. Browser rules change without much notice — check current documentation before building on it.
Free · 30 min
Get cookies that outlive your consideration window
Free30 minutesNo obligation
