Add Velo to HubSpot.
Install the Velo cookie banner and Google Consent Mode v2 on HubSpot in minutes. One line in Site header HTML does it. If you already run Google Tag Manager, that route is on this page too.
Paste one line
into Site header HTML.
One line in HubSpot, and the banner is on every page with the Consent Mode default set before any other tag can fire. Same banner, same wiring and the same audit log as the Tag Manager route.
Already running Google Tag Manager? Take that route instead ↓
Three steps · about two minutes
-
01
Copy the line
One script tag, the same on every page of the site. Everything below is about getting it into the right place, and that place is always the head, ahead of the tags it governs.
<!-- Before your other tags. That order is the point. --> <script src="https://veloconsent.com/v1/velo.js" data-velo-site="your-site-id" defer></script> -
02
Open the site header settings
In HubSpot, go to Settings → Website → Pages, choose the domain, and paste the snippet into Site header HTML. Save.
app.hubspot.com · Settings
-
03
Reload any page
Website pages, landing pages and the blog on that domain all inherit the header, so the banner is live everywhere at once with the Consent Mode default set before any other tag can fire.
your-site.com
Turn HubSpot's own banner off under Privacy & Consent first. And note that HubSpot's analytics is not a Google tag, so Consent Mode does not gate it by itself — if compliance requires that, load it through Tag Manager and gate it on the velo_consent_update event.
Or import the tag
in Tag Manager.
One tag, no code on the page, and your whole measurement stack stays in one place. No Tag Manager yet? The GTM container goes in the same Site header HTML box, then start here.
- 01Import the Velo CMP templateTemplates→Tag Templates→New→Import
- 02Create the tagTags→New→Velo CMP template
- 03Tick the two recovery optionsAdvanced→url_passthrough→ads_data_redaction
- 04Fire it on Consent Initialization – All PagesTriggering→Consent Initialization – All Pages
- 05Turn on consent overview under AdminAdmin→Container Settings→Enable consent overview
- 06Preview, then publishPreview→Submit→Publish
HubSpot questions,
answered.
What teams installing on HubSpot ask first.
HubSpot already shows a cookie banner.
Turn HubSpot’s banner off under Privacy & Consent so Velo is the only layer your visitors see. Two banners confuse people, and two consent tools send Google conflicting signals.
Does it cover landing pages and the blog?
Yes. Everything HubSpot serves under the domain inherits the site header HTML, so one paste covers website pages, landing pages and blog posts alike.
What about HubSpot’s own tracking code?
HubSpot’s analytics is not a Google tag, so Consent Mode does not gate it by itself. If compliance requires it, load it through Tag Manager and gate it with the velo_consent_update event. The GTM guide shows the exact trigger.
Will it slow the site down?
No. The script loads deferred, never blocks rendering, and the visitor's region is resolved at the nearest edge before the page finishes painting. The banner itself is a few kilobytes of static code.
Can an AI assistant do this for me?
Yes. Copy the prompt in Install with agents, just below, into Claude, ChatGPT, Cursor or whichever assistant you already use. It carries the steps on this page, the order the tags have to load in, and the checks the agent has to run before it tells you the job is done.
Or hand it
to an agent.
Copy the prompt into Claude, ChatGPT, Cursor or whichever assistant you already use. It carries everything on this page: both routes, the order the tags have to load in, and the checks that prove it worked.
Paste it in as your first message, then swap your-site-id for the ID on your Velo dashboard. Everything else the agent needs is already written into it, including what to check before publishing.
Working with an agent that reads the web? Point it at veloconsent.com/llms.txt and /install.md for the same context in plain text.
From the journal.
Your banner, your consent,
your data — all in one place.


