Product
sGTM Proxy Client for Braze™
A Google Tag Manager Server-Side Client Template that turns your sGTM container into a Braze custom domain — routing all Braze requests past ad blockers in minutes. Easy to set up.
- sGTM Client Template
- Reverse Proxy
- First-Party
- GDPR-Friendly

Overview
What is the Braze sGTM Proxy Client?
The Braze sGTM Proxy Client is a Google Tag Manager Server-Side Client Template that acts as a transparent reverse proxy for the Braze Web SDK. When a browser requests the Braze Web SDK, the template fetches and serves it from your sGTM container — under your own domain, never from Braze's CDN. When the initialized SDK makes Braze requests, those hit your sGTM endpoint, which forwards them to the configured Braze endpoint and streams the response back to the SDK. The result: your sGTM container becomes a Braze first-party endpoint — all Braze network traffic runs through your domain, invisible to ad blockers, while the Web SDK continues to work exactly as before.
Features
Key Features
Serve the Web SDK
The Braze Web SDK file is fetched and served from your sGTM endpoint. Browsers request it from your domain — never directly from Braze's CDN.
Proxy Requests
All Braze requests from the initialized SDK are forwarded to the configured Braze endpoint. Responses flow back to the browser intact.
Ad-Blocker Resistant
The Braze ad blocker problem vanishes: SDK file and all requests originate from your own domain. No Braze-specific URLs appear in browser network traffic — indistinguishable from first-party requests.
Security Hardened
Built-in API key allowlisting and origin restrictions let you control exactly which callers the proxy accepts.
Braze First-Party Endpoint
Your sGTM container becomes a dedicated Braze first-party endpoint. All SDK requests and responses flow through your own server infrastructure — no Braze-owned domains in the network chain.
Drop-In Setup
Point your SDK initialization's baseUrl to your sGTM endpoint. No changes to your existing Braze event tracking logic.
How it works
How It Works
Browser requests the SDK
The browser requests the Braze Web SDK from your sGTM container endpoint (your own domain), not from Braze's CDN.
sGTM fetches and serves the SDK
The Client Template fetches the Braze Web SDK from Braze's CDN server-side and returns it to the browser.
SDK initializes and sends Braze requests
The SDK runs as normal. Its data collection requests target your sGTM endpoint instead of Braze directly.
Proxy forwards to Braze and returns the response
The Client Template receives each Braze request, forwards it to the configured Braze endpoint, and streams the response back to the SDK.
Setup
Requirements
- Server-Side Google Tag Manager (sGTM) container
- Braze account with Web SDK enabled
- Braze SDK endpoint URL (e.g. https://sdk.fra-02.braze.eu)
- Optional: API key allowlist and origin restrictions for additional security
FAQ
Frequently Asked Questions
What is a reverse proxy for the Braze Web SDK?
It is an sGTM Client Template that sits between the browser and Braze. When the browser requests the Braze Web SDK, the template fetches and serves it from your own domain. When the SDK makes Braze requests, the template receives them, forwards them to the real Braze endpoint, and returns the responses — all transparently.
Why does Braze get blocked by ad blockers, and how does this fix it?
Ad blockers block Braze by targeting known CDN URLs like js.appboycdn.com and SDK endpoints like sdk.iad-01.braze.com. This proxy eliminates the Braze ad blocker problem by routing both the SDK file and all requests through your own sGTM domain — those Braze-specific URLs never appear in browser network traffic, making requests indistinguishable from first-party calls.
Do I need to change my existing Braze integration?
Only minimally. You point the SDK initialization's baseUrl to your sGTM container endpoint instead of Braze's SDK endpoint. The SDK itself, your event tracking logic, and all other configuration remain unchanged.
Is this the same as server-side event tracking?
No. Server-side event tracking replaces browser events with server-to-server requests. This proxy keeps the Braze Web SDK running in the browser as-is — it simply routes the SDK's own network traffic through your server. Session management, in-app messaging, and all event logic continue to run in the browser.
Is this template GDPR compliant?
The template is a technical routing tool. GDPR compliance depends on your consent implementation and your Data Processing Agreements with Braze. The proxy does not alter or persist any data — it transparently forwards requests and responses.
What is a Braze custom domain?
A Braze custom domain means the Braze Web SDK and all SDK requests are served from and sent to your own domain instead of Braze's CDN or endpoint URLs. This proxy template sets up that custom domain on your sGTM container — no separate server or DNS changes required.
What is a Braze first-party endpoint?
A Braze first-party endpoint is a URL on your own domain that receives Braze SDK requests and forwards them to Braze's servers. This template turns your sGTM container URL into that endpoint, so browsers treat all Braze traffic as first-party — bypassing ad blockers and third-party cookie restrictions.
Where do I get the template?
The template is available on Gumroad. After purchase you receive the sGTM Client Template file, which you import directly into your sGTM container.
Stop losing Braze data to ad blockers
Get the sGTM Proxy Client Template and set it up in minutes.
Get it on Gumroad →