Outcome. Historical contacts that were never formally associated with the HubSpot campaign they actually came from get associated in bulk, so campaign-level reporting stops silently excluding pre-automation-era leads.
flowchart TD
A[List membership + status = Pending] --> B[Custom code: match proxy value to Campaign, associate]
B --> C{outcome?}
C -->|Associated| D[Set status = Associated]
C -->|Skipped| E[Set status = Skipped]
C -->|Failed| F[Set status = Failed, notify marketing ops]

When to use it, when not to
- UseUse once, when a portal starts using HubSpot's Campaigns tool for attribution reporting but a backlog of older contacts predates that setup and lacks the association.
- UseUse as a one-time or occasional cleanup, not an ongoing workflow.
- SkipDo not use for new, ongoing contacts. Wire proper campaign association into your live capture process (forms, ad integrations) going forward, and use this fiche only for the historical backlog.
- SkipDo not run this without Data Hub Professional or higher. This fiche depends on a scheduled, no-native-trigger batch operation and custom coded bulk association calls, both Data Hub-tier capabilities per this taxonomy row's declared minimum.
or the marketing ops pack, 39 EUR
One-time, excl. VAT. 30-day refund, no questions asked. Founding prices until 31 October, then 199 and 59 EUR. Includes every spec added later, up to the full 500, and the one-click installer on the full library. Building on client portals? The agency licence at 449 EUR covers unlimited client portals.





