# Track Bitly and other shortened links

Create the complete labelled destination first, then shorten that link in Bitly or another service. Attriboo reads the labels on the final website page. It does not need a Bitly account connection for this basic flow, and it does not import Bitly click counts.

Canonical page: https://www.attriboo.com/docs/shortened-link-attribution

Instructions reviewed: 2026-11-01

## Before you share a link

- Choose the correct website in Attriboo and install its tracking code on the destination page.
- Keep your consent integration connected. Rejected consent and excluded countries can prevent a visit being recorded.
- Connect the payment provider for that website and complete the matching setup if you want visits linked to sales.
- Use a separate, readable campaign label for each campaign you want to compare. Keep private information out of the URL.

- [Install Attriboo on your website](https://www.attriboo.com/docs/installation)
- [Connect payments and visit matching](https://www.attriboo.com/docs/payment-connections)
- [Understand country controls](https://www.attriboo.com/docs/country-controls)

## Build first, shorten second

1. **Open Settings → Tracking links in Attriboo.** Choose the actual sharing source, such as LinkedIn post or X / Twitter post. Bitly is the shortening service, not the original marketing source.

2. **Enter your destination and campaign, then create the link.** Use a different campaign label for each placement you need as a separate revenue row. The optional post label is recorded but does not split campaign revenue on its own.

3. **Paste the entire completed URL into Bitly’s destination field.** Shorten that full URL, including the question mark and all campaign labels. Use the equivalent destination field in another shortener.

4. **Publish the resulting short link.** Keep a record of its destination and intended placement. Changing a short link’s destination later can change which labels future visitors receive.

Destination to shorten for one LinkedIn post

```
https://example.com/offer?utm_source=linkedin&utm_medium=social&utm_campaign=linkedin_post_01&utm_content=founder_post
```

- [Read Bitly’s UTM setup explanation](https://bitly.com/pages/features/utm-tracking)

## Do not rely on tags added after the short link

A URL such as bit.ly/example?utm_source=linkedin is a request to the shortening service. Whether those extra parameters reach the destination depends on that service’s forwarding settings. Putting the labels in the stored full destination avoids relying on that extra forwarding behavior.

Test every redirect in the published path, including a branded short domain, HTTP-to-HTTPS redirects, a landing-page redirect and a language or device redirect. The final page must retain the source, marketing type and campaign before the tracker reads them.

- [Follow Bitly’s recommendation to tag before shortening](https://bitly.com/blog/short-link-tracking-analytics/)

## What the source report will show

| Final page information | Expected result for a new visit |
| --- | --- |
| utm_source=linkedin and utm_medium=social | Social → LinkedIn, even if no usable browser referrer arrives. |
| utm_source=facebook and utm_medium=paid_social | Paid Ads → Meta Ads. |
| A t.co or lnkd.in referring domain without labels | The recognized social platform, with no guaranteed individual post or campaign. |
| Only a bit.ly referring domain, with no labels | A referral from that domain; it does not prove which platform originally shared it. |
| No usable source label, referrer or recognized ad signal | Direct. The original placement cannot be reconstructed from the short code alone. |

## Find the visits and sales in Attriboo

1. **Choose the same website and dates.** Include the test visit and any later payment. Keep the same attribution model when comparing campaigns.

2. **Check Sources, then Campaigns or Ad ROAS.** Sources shows the platform label. Campaigns groups visits and credited revenue by utm_campaign. A campaign label is not proof that the activity was a paid ad.

3. **Use distinct campaign labels for separate post revenue rows.** If two posts share a campaign label, their campaign totals are combined. The optional utm_content label is recorded with activity; it does not create a separate per-post or per-ad revenue report. For paid ads, keep the campaign ID or name that matches the imported cost.

4. **Check a missing sale separately.** A payment can be imported without a matching visit. Consent, blocked tracking, country controls, another device, a cleared identifier or missing checkout metadata can prevent matching. A tagged link does not fix those gaps.

- [Understand source reports](https://www.attriboo.com/docs/sources)
- [Read the attribution model rules](https://www.attriboo.com/docs/attribution-models)
- [Check a missing payment or visit match](https://www.attriboo.com/docs/troubleshooting/missing-sales)

## Test the published link

1. **Copy the final link from the actual post, profile or ad.** Test the published destination you control, including any shortener or redirect, rather than only the URL in your draft.

2. **Open it in a fresh test browser session.** Check the address after redirects. It must retain utm_source, utm_medium and utm_campaign. Give consent only through your normal website choice. Use a test location permitted by your saved country controls.

3. **Check a new recorded visit.** Select the matching dates and find the expected source and campaign. If you are using a browser-ignore setting, an ad blocker, cookieless mode or excluded country, the expected result may be no visitor-level journey.

4. **Check checkout matching only when needed.** Use your payment provider’s supported test setup or an existing payment you are authorized to inspect. Do not make an unnecessary live purchase. A working link test does not itself prove revenue matching.

- [Troubleshoot visits that do not appear](https://www.attriboo.com/docs/troubleshooting/no-visits)
- [Test your consent integration](https://www.attriboo.com/docs/cookie-consent)

## Why clicks, visitors and sales will differ

A shortener measures requests to its link. Attriboo measures activity that reaches a page with its tracker and passes your collection controls. Preview bots, repeat clicks, blocked scripts, consent choices, country controls and redirects can make the counts differ.

A click is not automatically a distinct person, a recorded website visit or a payment. Attriboo needs a permitted standard visit and supported payment matching to credit revenue. Cookieless totals do not create a visitor-to-sale link. Do not add a shortener’s clicks to Attriboo’s visitor total.

- [Compare standard and cookieless measurement](https://www.attriboo.com/docs/cookies-and-cookieless-tracking)

## You are done when

Your short link reaches a tracked page with the intended labels intact, and new permitted visits appear under the expected source and campaign.

## Related guides

- [Label your campaign links](https://www.attriboo.com/docs/markdown/campaign-links.md)
- [Track X / Twitter posts, profile links and ads](https://www.attriboo.com/docs/markdown/x-twitter-attribution.md)
- [Track Meta ads, Facebook and Instagram revenue](https://www.attriboo.com/docs/markdown/meta-ads-attribution.md)
- [Track LinkedIn ads and organic posts](https://www.attriboo.com/docs/markdown/linkedin-ads-attribution.md)
