Track Affiliate Leads in Safari: Ensure Referral Attribution Despite ITP
Since Intelligent Tracking Prevention (ITP) shipped, Safari blocks many third-party cookies. Funnelforms works around this with its own tracking bridge so affiliate referrals are also attributed reliably in Safari. This article explains how it works and what to do if a lead is still not attributed.
Prerequisites
- You are an affiliate partner and use your referral link.
- Your link follows the format
/ref/{partner_code}.
Where to find it
You will find your links in the Partner area via the Become a Partner.

Features
- Bridge route
/ref/:codesets cookies and localStorage on the app domain. - 700 ms delay as a workaround against Safari's bounce-tracking protection.
- Final redirect to
https://www.funnelforms.io. - On signup, localStorage takes precedence over cookies.
- Attribution persists as long as the tracking cookie is valid (default 30 days, configurable in affiliate settings).
Step by step: use the tracking bridge
- Share only links in the format
/ref/{partner_code}. - The click lands on the bridge, waits 700 ms and redirects to the marketing site.
- If the recipient signs up before the tracking cookie expires (default 30 days), the referral is attributed.
Explanation
Because the bridge runs on the same app domain, the stored values count as first-party storage and are not immediately discarded by Safari. The short wait prevents ITP from treating the visit as a bounce and erasing localStorage.
Note: Self-referrals are blocked. Minimum payout is 100 USD.
Best practices
- Always share the full bridge link, never direct
www.funnelforms.ioURLs. - Encourage recipients to sign up right after the click.
- Avoid URL shorteners that add multiple redirects.
Troubleshooting
- Lead not attributed: signup occurred after the tracking cookie expired or in a different browser/device.
- Incognito mode: storage is cleared on close. Attribution may fail.
- Strict tracking protection (e.g. Brave): may block the bridge. Recipient should switch browsers.
- Self-referral: own signups are intentionally not counted.
Tips
- Test your link in a private Safari window and in a regular Chrome window.
- After the click, check the browser DevTools for a
refentry inlocalStorage.
FAQ
Why 700 ms wait? Shorter values are treated as a pure redirect by Safari's bounce protection, which clears the storage.
When is the lead booked? Once signup completes and the referral code can be read from cookie or localStorage. The commission then enters a 60-day hold before it is released for payout.
Is this only relevant for Safari? The bridge helps every browser but is primarily designed against Safari/ITP behavior.