Skip to main content
Cookie lifespanFree tool

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

Free toolRuns in your browser · nothing is uploaded

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.

Expiry you set, in days

Two years is 730. GA4’s default is 730.

How the cookie is set

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

  1. 01

    Attribution vanishes on longer journeys

    And you suspect the cookie.

  2. 02

    You're weighing server-side

    And want to see what the difference buys.

  3. 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. 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. 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. 3

    Everything is capped at 400 days

    Under RFC 6265bis, browsers truncate anything longer without telling you.

  4. 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.

  1. 01

    What your actual cookies do

    It's arithmetic on published caps. It can't read your site.

  2. 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.

  3. 03

    Current browser behaviour

    Tracking-prevention rules change without much notice. Verify before building on this.

  4. 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

Get my free conversion tracking audit

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
Have it fixed

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
Rebuild it server-side

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
Get the full stack

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.

Free · 30 min

Get cookies that outlive your consideration window

Free30 minutesNo obligation