Logo of TAGGRS, written in blue and with a small favicon
HomeServer-side Tracking
Start for free
Introduction
Get started
Get started with TAGGRSSet up Google Tag ManagerAdd the GTM Data LayerConfigure GTM transformationsTest the setupDebuggingAnalytics dashboard
Migrate from Google CloudMigrate from hosting
Shortcuts
GTM Copy PasteReady-made templates
GA4 Server-side Tracking
Setup in GTMCreate GA4 Event TagsGA4 tag setup in server containerE-commerce events in GTM
Google Ads Server-side Tracking
Install Conversion LinkerSet up Conversion TrackingConfigure Enhanced ConversionsDeploy Remarketing Tags
Facebook Server-side Tracking
Set Meta PixelImprove your EMQ ScoreInstall Meta CAPIMeta Events DeduplicationMeta CAPI Gateway
LinkedIn Server-side Tracking
Install LinkedIn Insight TagSet up LinkedIn CAPILinkedIn Events Deduplication
TikTok Server-side Tracking
Set up TikTok PixelInstall TikTok Events APITikTok Events Deduplication
Pinterest Server-side Tracking
Set up Pinterest TagConfigure Pinterest Conversions APIPinterest Events Deduplication
Snapchat Server-side Tracking
Set up Snap PixelSnapchat Conversions APISnapchat Events Deduplication
TAGGRS Tracking Tags and Tools
Tracking TagsGoogle Service Account integrationsGTM LogsProfit TrackingData Enricher ToolWebhooks TesterEnhanced Tracking ScriptMulti Domain ToolClick ID RecoveryConsent Tool
Configurations
Billy Grace Server-side TrackingLeadPages Server-side TrackingPiwik PRO Server-side TrackingCDN Server-side TrackingShopify Server-side TrackingActiveCampaign Server-side TrackingKlaviyo Server-side Tracking
Server-side Tracking for e-commerce
Shopify Data LayerShopware Data LayerMagento Data LayerWooCommerce Data LayerPrestashop Data LayerLightspeed Data Layer
Consent Management server-side
Activate Consent ModeConfigure TAGGRS with Axeptio

Configure TAGGRS with Axeptio using GTM

This guide walks you through the configuration of Axeptio CMP with TAGGRS via Google Tag Manager (GTM). The objective is to ensure that user consent collected through Axeptio is properly transmitted to your server-side setup hosted by TAGGRS, supporting compliance with regulations like GDPR, Law 25, nFADP or CCPA.

Why switch from client-side to server-side Consent Management?

Most consent management platforms are usually deployed client-side, meaning scripts are loaded directly in the user's browser. While this setup is quick to implement, it's increasingly impacted by browser restrictions (like Safari or Firefox) and widespread use of ad blockers.

In this context, Server-side Tracking is quickly emerging as a key technology. By routing data collection and consent signals through your own subdomain and a server container, you gain control over what gets sent, improve data accuracy, and bypass ad blockers and browser limitations.

Prerequisites

  • A configured Axeptio project with

    with Consent Mode v2 enabled

  • Access to both Web and Server Google Tag Manager containers
  • A TAGGRS account with an active server-side tagging project

How to send consent data

Ensure that the user’s consent, collected via Axeptio, is properly sent from the web container to your server container. This requires setting up a variable and a tag in your GTM web container.

Create the “Axeptio Consent State” variable

This variable contains the list of all cookies (authorized vendors) accepted by the user. Follow this step-by-step guide to creating the Axeptio Consent State variable in GTM.

This variable is the equivalent of axeptio_authorized_vendors from the dataLayer, and it’s essential for sending granular consent signals to the server container.

If you’ve enabled Google Consent Mode v2 in your Axeptio configuration, it will map your consent categories to the expected Google signals: ad_storage, ad_user_data, ad_personalization and analytics_storage. To check and adjust Google Consent Mode v2 configuration with Axeptio, follow the guide Configuring Google Consent Mode v2 in Axeptio.

Create a tag to transmit the consent state

Next, you need to create a tag that fires when Axeptio updates the user’s consent preferences. This tag will pass the user’s consent state (stored in the 'Axeptio Consent State' variable) to your server container.

Here, for example, we use GA4 as a technical bridge to transfer the consent information to TAGGRS, but other alternatives are possible.

So, first, in your GA4 configuration tag settings, add your server_container_url. This tells the tag where to route the data instead of sending it directly to Google’s servers.

How to create a tag to transmit the consent state in Google Tag Manager with TAGGRS and Axeptio

Next, we’ll create a new GA4 Event tag that will send consent state information to the server container at the appropriate moment.

  1. In "Tags", choose "GA4 Event".
  2. "Tag type": select your existing GA4 configuration tag.
  3. Set:
    • Event Name: axeptio_update
    • Event Parameters:
      • Name: axeptio_consent_state
      • Value: {{Axeptio consent state}}
How to create a new GA4 Event tag that will send consent state information to the server container at the appropriate moment in Google Tag Manager with TAGGRS and Axeptio

Then, use the custom axeptio_update event, which is sent by Axeptio each time the consent is read or modified.

How to use the custom axeptio_update event

Receive and process consent in your server container

Now that the first container setup is complete and the “Axeptio consent state” is being sent to your server container via a GA4 event, the next step is to configure your TAGGRS server-side container to receive and interpret this data correctly.

Logo of TAGGRS Server-side Tracking: a light blue circle with two blue angle brackets
If you haven't yet set up Google Tag Manager (GTM) with TAGGRS for Server-side Tracking, here's the setup guide.

Create an Event Data variable to receive the Axeptio consent state

To do this, you will need to set up a GA4 client in your server container.

How to set up a GA4 client in your server container with Google Tag Manager, TAGGRS, and Axeptio

In your Server GTM container, start by creating a User-defined Variable of type Event Data.
This variable will now contain the list of authorized vendors (cookies or tags the user has consented to), sent from the browser when the axeptio_update event fires.

How to create a user-defined variable of type event data

Use the consent state to condition server-side tags

With the axeptio_consent_state variable available server-side, you can now granularly condition the triggering of your tags based on the vendors accepted by the user.

For example, to fire a GA4 Page View server-side only if the user consented to Google Analytics:

  1. Create a new GA4 Event tag (e.g. "Page View")
  2. Set the trigger to the event name: axeptio_update
  3. Add a trigger condition: axeptio_consent_state contains "google_analytics"
Trigger configuration in Google Tag Manager

Each vendor in Axeptio has a technical name stored inside the “Axeptio consent state” variable. You can find these names in this section of Axeptio’s documentation here: How to retrieve the name of cookies

Repeat the logic for each vendor

This setup allows you to selectively trigger tags for each vendor the user has consented to.

For every technology or partner you want to load server-side (Meta, TikTok, Hotjar, etc.), you can:

  • Check whether the corresponding vendor name is present in the Axeptio consent state variable
  • Trigger your tag accordingly

This modular logic ensures full compliance with user choices while maintaining maximum flexibility in your server-side tracking strategy.

All in all, this setup offers a future-proof approach to consent management: more resilient data collection, full respect for user preferences, and scalable, compliant tracking for every vendor in your stack.

Useful resources

Find expert support
Previous
Consent Mode for Server-side Tracking
Copyright © 2025 TAGGRS. All right reserved.
TABLE OF CONTENTS
Why switch from client-side to server-side Consent Management?PrerequisitesHow to send consent dataReceive and process consent in your server containerUseful resources