Full Answer
Safari needs its own test because Intelligent Tracking Prevention behaves differently from other browsers, and a setup that looks healthy in Chrome can lose data the moment a real customer arrives on an iPhone. Start with a clean Safari session, ITP left at its default on setting, and click a fully tagged link rather than pasting a clean URL, so any parameter stripping shows up.
Check attribution first. In GA4 Realtime, confirm the session appears under the correct source and medium. If it lands as Direct, either the UTMs were stripped in transit or ITP prevented the source from being recorded. Then check persistence, which is where Safari quietly hurts you: ITP caps the lifetime of first-party cookies set via script at 7 days, and link-decoration cookies even shorter, so a returning visitor can look brand new and longer attribution windows simply break.
For WooCommerce, finish with an end-to-end test purchase in Safari. Click the tagged link, complete a test order, and verify the order carries the campaign source. A session that attributes correctly on the landing page but produces an order with no source usually points to a checkout or payment redirect, compounded by ITP. The reliable fix is to set cookies server-side from your own domain and capture attribution at the order, since server-set first-party cookies and server-side events aren't subject to the script-cookie limits ITP enforces.