Server side tracking
Server-side tracking sends your store's analytics and ad events through your own tagging server before they reach platforms like Google Analytics 4, Meta, and Google Ads. That improves data accuracy, privacy control, and resilience against ad blockers.
New to SST? Read The Power of Server-Side Tracking for why it matters.
Before you begin
Complete client tracking setup first. Server-side tracking builds on the same GTM web container and custom pixel.
- In the app, go to Pixel & Tags → Client tracking (
/pixels/trackers/client). - Finish both onboarding steps:
- Step 1 — Initialize tracking and generate pixel script (creates your GTM web container and tracking loader).
- Step 2 — Create a Custom pixel from the above script (install the script in Shopify Admin → Settings → Customer events).
If either step is incomplete, the Server tracking screen shows Client setup required and blocks Turn on Server side tracking.
For detailed client pixel instructions, see How to set up Pixel and Tags.
Billing
Server-side tracking is a subscription add-on:
- 5 monthly credits (5 USD/month) on your Multifeeds plan (includes 500,000 server-side tracking requests per billing period).
- Usage charges beyond included volume: $1 USD per 100,000 requests (billed on your Shopify subscription).
When you first turn on SST, Shopify may ask you to approve the add-on charge. After approval, return to the app — the configuration modal opens automatically.
Where to configure SST
- Open Tracking → Server tracking.
- Click Turn on Server side tracking (or Configure if already enabled).
- Complete the Server side tracking modal and save.
Configuration options
Tracking domain (recommended: First party)
This is the domain that would be assigned to your tracking server. As it would be the target for your tracking requests, it is highly recommended to be first party, or in other way, a subdomain of your store domain.
Tracking scripts on your Shopify store at yourstore.com would love to talk to your tracking server at subdomain.yourstore.com
| Option | When to use | DNS required? | Server region |
|---|---|---|---|
| First party domain (recommended) | Production stores; best for cookie longevity and trust | Yes — CNAME at your DNS provider | You choose (see regions below) |
| Use WoolyTech domain | Quick testing; managed hostname per store | No | Fixed to EU |
First party domain checklist
- Use a subdomain of your store domain (example:
track.yourstore.com). -
Create a CNAME record:
your-subdomain.yourstore.com→sgtm-{your myshopify subdomain}.woolytrack.org
(The app shows the exact hostname and target for your shop — use the Copy buttons.)
- Cloudflare users: set the CNAME to DNS only (gray cloud), not Proxied (orange cloud). Orange-cloud proxying can block CNAME verification.
WoolyTech managed domain
- Uses a hostname like
sgtm-yourstore.woolytrack.org. - No DNS setup; server is always provisioned in EU.
- Useful for evaluation; first-party domain is recommended for live stores.
Server location
At launch, choose EU or US-east for new provisioning. The modal may show latency hints to help you pick a region close to most customers.
GA4 Measurement ID (server-side)
- Required format:
G-XXXXXXXXXX(10 characters afterG-). - You can pick an ID from existing client-side GA4 trackers in the dropdown, or type one manually.
- If a client-side GA4 tracker already uses the same Measurement ID, pause or remove it to avoid duplicate events. The app warns you when this happens.
Setup walkthrough
Step 1 — Turn on and save configuration
- Open Server tracking and click Turn on Server side tracking.
- Approve billing if prompted.
- In the modal:
- Choose First party domain or WoolyTech domain.
- Enter subdomain (if first-party).
- Select server region (first-party only).
- Enter GA4 Measurement ID.
- Click Save.
Step 2 — DNS (first-party domain only)
After saving, a Waiting for DNS banner appears with your CNAME details.
- Add the CNAME at your domain registrar or DNS host.
- Wait for propagation (often minutes; can take up to 24–48 hours).
- The app checks DNS automatically and shows a countdown until the next check — no manual refresh required.
Until DNS verifies, the tagging server is not provisioned (by design). This avoids failed server deployments.
Step 3 — Server provisioning
Once DNS is verified (or immediately for WoolyTech managed domain), you'll see Setting up your tracking server / Creating tagging server.
Provisioning usually takes a few minutes. During this time:
- Domain widget: moves from Waiting for DNS / Verifying toward Connected.
- Server container widget: Provisioning → Active when healthy.
- Traffic widget: starts showing request counts when events flow.
Step 4 — Install server-side trackers (optional but typical)
After the server container is Active, install trackers on Server tracking → Installed trackers:
- Examples: GA4 (server), Meta CAPI, Google Ads conversions — each installs into your server GTM container.
- Client trackers and server trackers are separate; server trackers require SST to be on and the server container ready.
See the Trackers section of the knowledge base for platform-specific guides.
Understanding the status widgets
| Widget | What it means |
|---|---|
| Domain | DNS/CNAME health and whether your tracking hostname resolves correctly |
| Server container | Whether the tagging server pod is provisioned and responding |
| Traffic | Recent server-side request volume (updates every few seconds when live) |
Badge states you may see
- Waiting for DNS — add or fix your CNAME.
- Provisioning / Updating — infrastructure or GTM server container work in progress.
- Active — server is operational.
- Unreachable — hostname resolves but health check failed; recheck DNS (especially Cloudflare proxy) or contact support.
Reconfigure or change settings
Click Configure on the Server tracking card to change:
- Custom domain or switch between first-party and Wooly managed domain
- Server region (subject to launch availability)
- GA4 Measurement ID
Major domain or region changes may trigger re-provisioning; expect brief Updating states.
Turn off server-side tracking
Click Remove server side tracking.
This permanently removes:
- Your tagging server infrastructure
- Server GTM container configuration
- Server-side trackers (including Multifeeds | Server-side routing)
Client pixel and web GTM container remain unless you remove them separately.
Troubleshooting
| Symptom | What to try |
|---|---|
| Client setup required | Finish client steps 1–2 on /pixels/trackers/client |
| Client container not ready | Wait for GTM web container initialization to complete (step 1) |
| Waiting for DNS stuck | Confirm CNAME host/target match the app exactly; disable Cloudflare proxy on the CNAME |
| Server not available / unknown tagging server URL | Click Reconfigure and save again with the correct domain |
| Duplicate GA4 events | Pause client GA4 tracker using the same Measurement ID |
| Pixel script "Outdated" during SST setup | Normal while DNS or server provisioning is in progress; resolves when SST is fully active |
| Billing / credits | Confirm SST add-on is active under your Multifeeds subscription |
Still stuck? Contact Multifeeds support with your shop domain, tracking subdomain, and a screenshot of the Domain + Server container widgets.
Related articles
- Server-Side Tracking benefits
- Pixel and Tags setup (client)
- GA4 web tracker
- Trackers overview
- Add-ons: credits, usage charges, and setup (see Server side tracking section)