Skip to main content

Deployment Paths

DataGrail Consent needs a small piece of JavaScript (consent.js) on your site to host the banner and control your trackers. How that script gets onto the page is the main decision you need to make, and it depends on what tag manager you already run.

This guide walks you through that decision. Each path ends with a link to the full instructions for your setup.

Two Independent Choices

Most confusion about deployment comes from treating these as one decision. They are separate, and you make both:

ChoiceWhat It ControlsYour Options
Container typeWhether DataGrail syncs and manages your tag manager's tagsGTM, Adobe, or DataGrail container
Script deliveryHow consent.js reaches the pageThrough your tag manager, or embedded in your <head>

The important consequence: choosing embedded delivery does not cost you tag management. A GTM or Adobe container with embedded delivery still gates your tags exactly as it would otherwise. You only lose tag management if you pick a DataGrail container, because there is no tag manager connected to sync from.

Choose Your Path

Start with the tag manager you already have on the site.

You would answer yes to "need control over when consent.js loads" if any of the following apply:

  • You run A/B testing or personalization software and need consent to load in a specific order relative to it
  • Your visitors' browsers or extensions block your tag manager's domain, which would block consent along with it
  • You want consent to load even if your tag manager itself fails to load

If none of these apply, take the tag manager delivery route — it is the simplest option and requires no code changes to your site. The same question applies on Adobe, covered in Adobe Tags.

GTM Delivery

This is the recommended path for most websites, and the one most readers are already set up for — over 90% of businesses already have Google Tag Manager on their site. DataGrail publishes consent.js into your GTM container as a tag, so no code changes to your site are needed at all.

AttributeDetails
Best forMost websites — the simplest, no-code path
You place code on your siteNo
GTM tag managementYes
PrerequisitesGTM on the site, publish permissions, at least one live container version

Three things make this the strongest option:

  • No-code applies to every future change, not just setup. Your GTM tags are gated by consent from DataGrail, so adding or recategorizing a tracker later never requires a developer or a site deploy.
  • Tags are synced and surfaced automatically. DataGrail imports your GTM tags for classification and keeps them in sync, alerting you when new ones appear — so a tag added by your marketing team does not silently go ungoverned.
  • Google Consent Mode is available on this path. This is the only setup that lets you strike the balance between honoring privacy choices and keeping your analytics and advertising working.

Consent Mode is worth understanding before you choose. It is implemented through GTM's own consent APIs, so it requires a GTM container — there is no equivalent on the Adobe or DataGrail paths. Instead of simply blocking Google tags when a visitor declines, DataGrail passes the consent state to Google, and Google's tags adjust their own behavior. In Advanced mode, denied tags still send anonymous, cookieless pings that carry no personal identifiers, which Google uses to build an advertiser-specific conversion model rather than falling back to a generic one. Without those signals, tags are blocked outright and Google receives nothing at all.

Follow the Google Tag Manager guide →

Embedded Delivery

You keep everything from GTM delivery, and additionally control where consent.js sits on the page. You place a script tag in your <head>, and DataGrail stops injecting the script through GTM.

AttributeDetails
Best forSites with load-order requirements or browser blocking concerns
You place code on your siteYes — one script tag in <head>
GTM tag managementYes — unchanged, including Google Consent Mode
PrerequisitesGTM on the site with publish permissions, plus the ability to edit your <head>

Follow the Embedded Containers With GTM instructions →

Place The Script Before Turning On The Toggle

Deploy the embedded script to your <head> first, then turn on Embedded Deployment and publish. Until you publish, GTM is still loading the script, so this order means the banner is never missing from your site.

Adobe Tags

DataGrail publishes a rule to your Adobe property that loads consent.js, and creates a data element for each consent category. Adobe has no per-tag consent setting, so you gate your own rules by adding a condition that reads those data elements.

AttributeDetails
Best forSites running Adobe Experience Platform Tags (formerly Adobe Launch)
You place code on your siteNo
Tag managementRules are gated by conditions you add to them
PrerequisitesAdobe integration connected, property added as a container, edit permissions on the property

Adobe requires an extra step the GTM paths do not: after adding a consent condition to a rule, you must build it through your own library and promote it through development and staging to production. A change published to development is not yet enforced for real visitors.

You can also deliver consent.js as an embedded script on an Adobe property. Just as with GTM, this is independent of your container type — you keep your consent data elements and rule gating either way, and only change how the script reaches the page. Choose embedded delivery if you need control over load order, or if you want consent to load even when Adobe does not.

Follow the Adobe Experience Platform Tags guide →

Contact Us Before Adding The Embedded Script

Reach out to support@datagrail.io before placing the embedded script on an Adobe property. Your Adobe consent rule loads consent.js on its own, so we need to make sure it stops doing so once your embedded script is live — otherwise the script loads twice.

No Tag Manager

Use a DataGrail container when the site has no supported tag manager. You place the script in your <head>, and there are no tag manager tags to sync — so you manage each tracker directly.

AttributeDetails
Best forSites with no supported tag manager
You place code on your siteYes — one script tag in <head>
Tag managementNone — no tag manager is connected
PrerequisitesAbility to edit your <head>

Because nothing syncs automatically, plan for how you will find and control trackers:

Follow the DataGrail Containers instructions →

Have GTM But Want The Embedded Script?

Use embedded delivery with a GTM container instead of a DataGrail container. You keep tag syncing, classification, and Google Consent Mode, and you can still deliver consent.js from your own <head>. A DataGrail container would give up tag management for no benefit.

More Than One Container Per Page

consent.js is designed to load exactly once per page. If your site loads more than one tag manager container on the same page, contact support@datagrail.io before you deploy so we can work through the right configuration with you.

If your containers correspond to genuinely different sites or brands rather than one shared page, Consent Projects let you configure and publish each one independently.

Before You Go Live

Whichever path you take, the remaining setup is the same — categorize your trackers, configure policies, and customize the banner. Both deployment guides walk through these in order.

Always Test On Staging First

Deploying a consent management platform is a major change to your website, because consent interacts with every other script and cookie on the page. Configure and test on a staging site first, or use Test Mode to preview banner behavior without affecting real consent data.

Once you have published for the first time, follow the testing guide to validate your implementation.

 

Need help?
If you have any questions, please reach out to your dedicated Account Manager or contact us at support@datagrail.io.

Disclaimer: The information contained in this message does not constitute as legal advice. We would advise seeking professional counsel before acting on or interpreting any material.