Find where the generator code goes on your platform
Paste the TermsFeed Free Cookie Consent code into the site-wide code slot of your platform, before </body> where the platform allows it, and every page shows the cookie banner. Drupal, Ghost, Framer, BigCommerce, HubSpot CMS, Blogger, and several smaller site builders have no install guide of their own and take the code the same way.
On a platform with a site-wide slot, paste the generator code once, in that slot, and never in a single page. Turn off the consent banner the platform shows, unless the section for your platform says to keep it, so visitors answer one consent banner. Where the platform allows it, move the tracking the platform adds by itself into tagged copies that carry type="text/plain" and a data-cookie-consent category, because Cookie Consent holds only the scripts you tag.
Create the code in the TermsFeed generator at https://www.termsfeed.com/cookie-consent/ first. Follow the generator steps in Install a Cookie Banner on Any Website.
Platforms with a site-wide code slot
Each of these platforms prints the code you paste into its slot on every page of the site, except some checkout pages, such as the Kajabi checkout and upsell pages. Paste the whole block the generator wrote.
| Platform | Where the code goes | Tracking or consent banner the platform adds |
|---|---|---|
| Drupal 10 and 11 | The html.html.twig template of your custom theme or subtheme, before </body>, then clear the cache |
The Google Tag module, or the older Google Analytics module, prints its own tag; remove the module and paste a tagged copy |
| Ghost | Settings > Advanced > Code injection > Site footer | None; Ghost does not set non-essential cookies by default |
| Framer | The custom code settings of the site, with the "End of <body>" placement |
The Google Analytics Measurement ID field in the site settings adds its own tag; clear it and paste a tagged copy |
| BigCommerce | Storefront > Script Manager | A built-in cookie consent banner and the analytics integrations in the control panel |
| HubSpot CMS | Site footer HTML on the Templates tab of Settings > Content > Pages | The HubSpot consent banner and the HubSpot tracking code |
| Blogger | Theme > More > Edit HTML, before </body> |
A cookie notice for EU visitors, the built-in Google Analytics field, and ad gadgets |
| Kajabi | Settings > Site details > Page scripts, the Header Page Scripts field | None |
| Duda | More > Settings > Body End HTML, on the Team plan or higher | A cookie notification that informs visitors without asking; turn it off in Privacy Settings |
| Weebly | Settings > SEO > Footer Code | A cookie notification for EU visitors; ask Weebly Support to turn it off |
| Carrd | An Embed element of type "Code", style "Hidden", placed at "Body End", on Pro Standard or higher | None |
For page scripts, Kajabi documents only a header field, which works because the generated run() call waits for the page to finish parsing. Duda warns that consent tools do not stop code in its Header HTML field before consent, so paste the Cookie Consent code and your tagged scripts into Body End HTML. Copy the tagged Google Analytics 4 tag from Block Google Analytics 4 Until Consent.
A theme or module that prints a script outside your control leaves it outside Cookie Consent. Remove the integration and paste the vendor snippet yourself, tagged with its category, from Vendor Recipes for Free Cookie Consent.
HubSpot CMS: Turn off the HubSpot consent banner
HubSpot adds its tracking code to every HubSpot CMS page by itself, outside the code you edit, so no tag of yours reaches it. Turn off the HubSpot consent banner and send the answer to HubSpot instead.
- Open the HubSpot settings, select Content > Pages in the left sidebar, and choose your domain.
- Click the Templates tab.
- Paste this script at the top of the Site header HTML field.
<script>
window.disableHubSpotCookieBanner = true;
</script>
Paste the Cookie Consent code into the Site footer HTML field, and click Save. Send each answer to HubSpot with the callback in Block HubSpot Tracking Until Consent. Approach 2 of that page tags the tracking code, which HubSpot CMS does not allow.
Blogger: Remove the built-in cookie notice
Turn off the Blogger cookie notice with cookieChoices = {}; in the <head> of the theme. Blogger shows its own notice to EU visitors, and that notice does not block any script. Blogger documents the cookieChoices line as the way to remove the notice.
Blogger themes are XML, so the inline script sits inside a CDATA section.
- Open Theme, click More under your current theme, and choose Edit HTML.
- Paste this script right after the opening
<head>tag.
<script type="text/javascript">
//<![CDATA[
cookieChoices = {};
//]]>
</script>
Paste the generator block right before </body>, wrap the inline run() script in the same //<![CDATA[ and //]]> lines, and save the theme. Clear the Google Analytics Measurement ID field in the Basic section of Settings, and paste a tagged copy into the theme instead. Cookie Consent does not hold the ad gadgets that Blogger adds, so remove them and paste tagged ad code instead to show ads only after consent.
BigCommerce: Pick one consent banner
Run either the BigCommerce cookie consent banner or Cookie Consent, never both. BigCommerce holds each Script Manager script by the consent category it carries. A script created through the Scripts API without a category does not load while the BigCommerce consent banner is on, according to the BigCommerce Scripts API documentation. Cookie Consent holds only tagged scripts, so 2 consent banners ask 2 questions that control different scripts.
Keep the BigCommerce consent banner, and remove Cookie Consent, when the trackers you need live in the control panel integrations. BigCommerce states that its Google Analytics 4 integration sends Google Consent Mode signals from that consent banner. Remove the 2 attributes from your tagged scripts then too, and add each one in Script Manager with its BigCommerce consent category. Otherwise, switch off the BigCommerce consent banner, then move the code and the scripts into Script Manager.
- Open Settings > Security & Privacy and, under Your Customers' Privacy, clear the Cookie consent tracking checkbox.
- Open Storefront > Script Manager and click Create a Script. Set the placement to "Footer", the location to "All pages", the script category to "Essential", and the script type to "Script", the option for code you enter by hand.
- Paste the generator block into the script contents and save.
- Remove the analytics integrations you added in the control panel, and add each one again as a tagged copy inside the same Script Manager script.
BigCommerce states that "All pages" covers the storefront, the cart, the checkout, and the order confirmation page, and that Script Manager works with Stencil themes. Tell 2 consent banners apart with 2 Cookie Banners Appear on Your Site.
Platforms with no site-wide code slot
Cookie Consent needs a site-wide code slot, because it holds only the scripts of the page it runs in. The code must run in the page itself, on every page, in the same document as the tagged scripts. Code in a single page covers that page only. Cookie Consent reads only the document it runs in, so code inside a frame does not hold any script in the page around it.
These builders either do not offer a site-wide slot or place your code inside a frame.
- GoDaddy Websites + Marketing. The builder offers an HTML section per page and no site-wide head or footer field. GoDaddy places that code inside a frame, and its own consent banner is on by default for new websites.
- Google Sites. Code goes into an embed block on a single page, through Insert > Embed, and Google does not document a site-wide code field.
- Notion Sites. Notion does not document a custom code field for a site published from Notion.
- Free plans of site builders. Wix, Squarespace, and Webflow offer custom code only on some paid plans, which their guides name.
Move the site to a platform with a site-wide slot, or to a plan that has one, so Cookie Consent holds its scripts. Compare the plans and slots of the site builders with Install a Cookie Banner on Any Website.
Add a preferences link on any platform
The generator block ends with the "Update cookies preferences" link, so the link prints where you pasted the block. Where that spot is not the footer, move the link into the site footer of your platform, so visitors reopen the Preferences Center from any page. Once Cookie Consent runs, a click on any element with the id open_preferences_center opens the Preferences Center, and Cookie Consent stops the browser from following the # address.
<a href="#" id="open_preferences_center">Update cookies preferences</a>
A menu builder that adds links without an id needs a selector instead, such as a class or an href value. Set up the selector with Add a Cookie Settings Link.
How to verify Cookie Consent on other platforms
The checks assume express consent with page_load_consent_levels left out or at the generator value ["strictly-necessary"]. Publish the site, close every private window, and test the live pages in a new one, because previews on many platforms leave out custom code. Run checks 1 to 5 on the home page.
- Open Chrome DevTools, select the Network tab, type
cookie-consentin the filter box, and reload. The loadercookie-consent.js, the scriptcookie-consent-code.js, and the ping towww.termsfeed.comappear, and the consent banner shows. - Change the filter to the host of a script you tagged, and reload. No request appears before you answer.
- Click the "I agree" button. The tracker requests appear without a reload.
- Open the Application tab, select Cookies and your site.
cookie_consent_level,cookie_consent_user_accepted, andcookie_consent_user_consent_tokenare listed. - Click the footer link. The Preferences Center opens with your saved choices.
- Close every private window, open an inner page in a new one, and confirm that the consent banner shows there.
On HubSpot CMS, open the Application tab before you answer and confirm that your site does not list a __hstc cookie. A __hstc cookie there means the HubSpot tracking code stores its cookies before your grant. Use the HubSpot consent banner in place of Cookie Consent then: remove the disableHubSpotCookieBanner script, the Cookie Consent code, and the 2 attributes from your tagged scripts. Set that consent banner up under the settings icon, Privacy & Consent, then the Cookies tab. Otherwise, after you click the "I agree" button, type hubspotConsent in the Console and confirm that the HubSpot keys for what you accepted, such as analytics for tracking, read true. Run the full set of checks with Check That Your Cookie Banner Works.
Common mistakes with Cookie Consent on other platforms
Before you publish, compare the platform tracking settings with your list of tagged scripts, because a platform adds some trackers outside the code slot.
- The platform integration still prints the script. A measurement ID left in a settings field adds an untagged copy, and its requests appear in the Network tab before you answer. Clear the field and keep only the tagged copy.
- The code sits in a page-level slot. The consent banner shows on the page you pasted the code into and on no other page in a private window. Move the code to the site-wide slot of your platform.
- 2 consent banners show. The platform consent banner and the Cookie Consent banner both ask the visitor for consent. Turn the platform consent banner off, or keep it and remove Cookie Consent.
- The checkout runs its own scripts. Kajabi leaves page scripts off offer checkout and upsell pages, so Cookie Consent never runs there, and a tracker that loads there runs without consent. A BigCommerce script set to "Storefront pages" skips the checkout. On Kajabi, paste the Cookie Consent code and your tagged scripts into the Footer tracking code field under Settings > Payment settings > Checkout too. Kajabi has no script field for upsell pages, so turn off any tracker that still loads on those pages. Set a BigCommerce script to "All pages".
- A cache serves the old pages. Platforms and content delivery networks cache pages, so the consent banner appears only after the cache clears, and the page source does not show
cookie-consent.jsuntil then. Purge the cache after you paste the code.
Cookie Consent does not delete cookies that other scripts already set, on any platform. Read every limit in Limits of Free Cookie Consent: What It Does Not Do.