The native sync can’t pass source data to contacts. That’s why every contact shows “Offline Sources” and your Contact Create, Deal Create, and Revenue Attribution reports are filled with useless data. UTM Bridge captures the original source, medium, and campaign so those reports finally show you what’s actually driving revenue.
Simulated HubSpot contact record — before and after UTM Bridge
Why does every Shopify customer show as "Offline Sources" in HubSpot?
When someone clicks your ad, lands on your Shopify store, and places an order, the native HubSpot–Shopify integration creates a contact from the order — not from the browser session. HubSpot never sees the UTM parameters, so it labels the contact "Offline Sources > Integration > Shopify." Your campaign data is lost before it ever reaches a report.
The native Shopify-to-HubSpot sync labels every contact "Offline Sources" because it can't pass attribution data. UTM Bridge works alongside that sync, getting the real campaign, source, and medium into HubSpot first. When the native sync runs a moment later, it adds order data on top without touching the attribution. Your Shopify revenue finally shows up in HubSpot attribution, and nothing else breaks.