- Shipped
- August 20, 2026 at 3:55 PM UTC
- Author
- kamo
- Commit
- 76f7f19
A code is not tied to a page — the marketing site captures it site-wide — so the only real question when sharing one is where the visitor should land. The product had no answer for that: the member got a single link to the home page and had to hand-edit a URL to send anyone to pricing, which is exactly where a typo silently costs a referral. TrackingLinkPicker offers all six front doors for one code, each one click from the clipboard: home, pricing, integrations, the early-bird offer, contact and book a demo. It opens the moment a code is minted — generating a link and getting one you can paste are the same errand — and again from the row menu, which now reads "Get links" instead of copying the home-page URL outright. /offer is deliberately NOT one of them. It answers HTTP 200 and serves the "Not Found" page, which is the worst kind of broken link: nothing reports it and the visitor just leaves. The real page is /pricing/offer, and the list is a typed module with that reasoning written down so nobody adds the pretty path back. The whole row is the button — a 24px copy icon beside 400px of inert text that plainly looks clickable is a target people miss — and confirmation is per row rather than a toast, because one toast cannot tell six near-identical links apart. The icon chip swaps to a check, a brand underline sweeps under the ?discount= segment, and the entrance stagger is capped so the sixth row is never late enough to read as a slow dialog. Reduced motion turns all of it off. The create dialog's own success state is gone with this: it showed one link and is now unreachable, so it and its imports are removed rather than left to rot.