Stape alternative: server-side conversion APIs without hosting server-side GTM
Stape hosts server-side Google Tag Manager: you build a server container in GTM and Stape runs it, free up to 10,000 requests a month and from $17 a month on paid plans (as of 6 November 2026). AgentFirstStack Tags gets conversions to the ad platforms without a GTM server container: one snippet on the site, and the service itself calls the conversion APIs of GA4, Meta, Google Ads, TikTok, LinkedIn, Pinterest, Reddit, Snap and X, with the browser and server copies sharing one event id. An agent can set it up from nothing. Stape is the better choice if your team works in GTM, needs its template gallery, or needs a custom tracking domain, which we don't offer yet.
Set it up with one prompt
Paste this into your coding agent. It looks at what the site runs first, so an existing GTM or Stape setup isn't overwritten blind.
Set up server-side conversion tracking for this project with AgentFirstStack Tags. It's a free, open-source tag manager that calls the ad platforms' conversion APIs itself, built for agents, and you can do the setup yourself: there is no signup form. 1. Read https://agentfirststack.com/llms.txt and https://tags.agentfirststack.com/llms.txt. 2. If this project's .env already has AGENTFIRSTSTACK_API_KEY, use it and read AGENTFIRSTSTACK.md. Otherwise get a key: curl -X POST https://agentfirststack.com/v1/signup, and save api_key in .env as AGENTFIRSTSTACK_API_KEY and in the production secrets. 3. Create a tags container for the production domain. Serve it through a first-party proxy on our own domain (the configs from GET /v1/containers/:id/install?proxy=1; keep the proxy key server-side), put the proxied snippet in the head of every page, deploy, and run scan. 4. If the site loads a Google Tag Manager web container or sends to a server-side GTM endpoint (Stape or another host), tell me what it fires before you change anything. Import the web container (draft/import with format "gtm", dry run first) and list what didn't map. 5. Run setup with the conversions that matter here (sign-ups, purchases, leads) and the platforms this business uses. If you have tools for those platforms, use them to find the IDs; otherwise ask me for exactly the IDs and tokens setup reports as missing, and where I find each. 6. Validate, test every destination and show me each platform's answer, open a preview and read its log, then publish. Don't remove GTM or the old server-side setup until I say so. 7. Write the container id and the env var name (never the key) in AGENTFIRSTSTACK.md, and create a claim link for me with POST https://agentfirststack.com/v1/claim-link. Tell me what you set up, what each test returned, what's waiting on me, and give me the claim link.
What Stape is
Stape sells two things: Server GTM Hosting, "From $17/month", and Dedicated Gateways, "From $8/month" (stape.io, as of 6 Nov 2026). The hosting runs your server-side GTM container; Google's own docs say a server container runs on a server you control, such as your own Google Cloud project (server-side tagging intro), and Stape is that server, managed for you.
Setting it up is mostly in GTM. Stape's guide: "Select Admin, then in the container column, choose +", "choose Server, and click Create", then "Select Manually provision tagging server, then copy your container configuration", and paste it into Stape's Container configuration field (Configure the sGTM container, as of 6 Nov 2026). The tags in that server container are GTM templates, many of them published by Stape; its template gallery includes Meta (Facebook CAPI), TikTok, LinkedIn, Snapchat, Reddit and Google Ads tags, and affiliate and email tools such as Awin, Impact, Klaviyo and Mailchimp (as of 6 Nov 2026).
Stape's plans for sGTM hosting (stape.io/price, as of 6 Nov 2026):
| Plan | Price (billed annually / monthly) | Requests | Logs |
|---|---|---|---|
| Free | $0, "No credit card required" | Up to 10K | Not listed |
| Pro | $17 / $20 a month | 500K | 3 days |
| Business | $83 / $100 a month | 5M | 10 days |
| Enterprise | $167 / $200 a month | 20M | Export to S3 or GCS |
| Custom | "Let's Talk" | Unlimited | Custom retention |
Stape also has agent access for an account a person has set up: a REST API and the Stape MCP server, which work with a Stape API key, and a separate GTM MCP server that edits GTM with Google sign-in (both Apache-2.0). Our GTM MCP comparison covers those.
How AgentFirstStack Tags does server-side
There's no server container to build or host. You define a conversion once, in plain terms or in the container's config, and the service delivers it.
- One snippet loads the container. When a conversion fires (a dataLayer event, a thank-you page, a form submit, a click), the runtime creates one
event_id, fires the browser pixels with it, and posts the event to/collect. - The service calls each platform's conversion API with the owner's credentials and the same
event_id, so platforms that deduplicate count it once. Ad click ids from the landing URL are stored with the visitor, so a purchase your backend reports days later still credits the click. - Your backend reports what the browser can't see with
POST /v1/containers/:id/events. Those go server to server, so a browser can't block them. - Every delivery is logged for 7 days with the platform's answer:
GET /v1/containers/:id/events.
| Destination | API | Test mode |
|---|---|---|
| GA4 | Measurement Protocol | Validation server |
| Meta | Conversions API | Your test_event_code |
| Google Ads | Data Manager API (or Google Ads API), click conversions | validateOnly |
| TikTok | Events API | Your test_event_code |
| Conversions API | None: test traffic is skipped | |
| Conversions API | ?test=true | |
| Conversions API | Your test_id | |
| Snap | Conversions API | /events/validate |
| X | Ads API conversions | None: test traffic is skipped |
Plus AgentFirstStack analytics and signed webhooks. Microsoft Advertising is browser-only for now (its UET tag); server-side for it isn't built. The server-side conversion guide explains dedup per platform, and there are deeper guides for Google Ads and the Meta Conversions API.
First-party serving and ad blockers
This is where Stape is ahead today. Stape lets you add a custom domain so the tagging server answers on a subdomain of your own site: "Use a custom tagging server URL, also called a custom domain, to set first-party cookies", on the same root domain, such as ss.example.com (Add a custom domain, as of 6 Nov 2026). AgentFirstStack doesn't offer a custom domain or CNAME yet; it's being built.
What we have now is a path proxy. Your site forwards a path on its own domain to the service: /_a/* for analytics, a prefix of your choice for tags and replay. The configs (a Cloudflare Worker route, Next.js, Vercel, Netlify, nginx) come from GET /v1/sites/:id/install for analytics and GET /v1/containers/:id/install?proxy=1 for tags, and send the site's x-afs-proxy-key so the service can trust the visitor's IP and location. We recommend it on every install.
Without the proxy, the default snippets load from analytics.agentfirststack.com and tags.agentfirststack.com, and ad blockers' filter lists block hosts like those. "Server-side" in AgentFirstStack means enrichment on our edge and conversions sent from our servers to the platforms; the browser's hit to us can still be blocked unless it's proxied. Backend-reported conversions can't be.
Side by side
| Stape (server-side GTM hosting) | AgentFirstStack Tags | |
|---|---|---|
| What runs server-side | Your GTM server container, on Stape's servers | The service itself; no container to host |
| Setup | A Stape account, a GTM server container, its config pasted into Stape, then tags in GTM | POST /v1/signup, a container, the snippet, setup with the platforms and conversions |
| Platforms | Any GTM server template: Stape's gallery and the community's | GA4, Meta, Google Ads, TikTok, LinkedIn, Pinterest, Reddit, Snap, X, analytics, webhooks |
| Browser and server dedup | Your web and server tags have to carry the same event id; you set that up in GTM | One event_id per conversion, used by the pixel and the API |
| Testing | GTM's preview mode; Stape logs from the Pro plan | Each platform's test mode, and a test call that returns its answer; test traffic never sent as a real conversion |
| Custom domain (first-party) | Yes: a subdomain of your site, such as ss.example.com | Not yet: a path proxy on your domain instead |
| Delivery log | 3 days (Pro), 10 days (Business) | 7 days, with each platform's answer |
| Agent access | REST API and MCP for an existing account; GTM through its MCP server | Signup, setup, test and publish over REST and MCP |
| Price | Free to 10K requests, then from $17 a month | Free hosted service with fair-use limits (10 containers, 5 destinations each) |
| Source | Hosted service; its MCP servers are Apache-2.0 | AGPL-3.0, self-hostable on Cloudflare Workers; browser scripts MIT |
When to choose which
Use Stape if
- Your team builds tracking in Google Tag Manager and wants server-side to work the same way.
- You need a platform or template AgentFirstStack doesn't have: affiliate networks such as Awin, Impact and Rakuten, email tools such as Klaviyo and Mailchimp, and the rest of the GTM template gallery.
- You want the tagging server on your own subdomain today.
- You need what Stape's Custom plan lists: a BAA for HIPAA compliance, single sign-on, a dedicated IP or a private cluster.
Use AgentFirstStack Tags if
- You want server-side conversion APIs without building or hosting a GTM server container.
- An agent should set it up and keep it working: create, test against each platform, publish and read the delivery log, all over the API.
- You want the pixel and the API to share one event id without wiring it yourself.
- You want the whole thing open source, or self-hosted on your own Cloudflare account.
Moving from GTM and Stape
POST /v1/containers/:id/draft/import with format: "gtm" takes a web container's export (or the Tag Manager API's lists), with a dry run first. Google tag and GA4, Google Ads, custom HTML and image tags, the common ad platform templates and nearly every trigger and variable map. Server-container clients don't: the server side becomes destinations, which need each platform's credentials. Keep the old setup running until the new event log shows the same conversions arriving, then remove it in the same change that publishes the container, or conversions count twice.
FAQ
Is AgentFirstStack a server-side GTM host like Stape?
No. It doesn't run GTM server containers. It's a tag manager whose service calls the ad platforms' conversion APIs itself: you define a conversion once, and it goes out as the browser pixel and server-side with the same event id.
Can AgentFirstStack serve tracking from my own domain like Stape's custom domain?
Not with a custom domain or CNAME yet; that's being built. Today the first-party route is a path proxy: your site forwards a path such as /_a/* to the service with the site's proxy key, using the configs from the install endpoints. Without it, the snippet loads from agentfirststack.com subdomains, which ad blockers can block.
Can I import my server-side GTM container?
Only the web container. draft/import maps a web GTM container's tags, triggers and variables; server-container clients aren't imported. You recreate the server side as destinations, which takes each platform's credentials.
What does Stape cost?
As of 6 November 2026, Stape's sGTM hosting is free up to 10K requests a month, then $17 a month billed annually ($20 monthly) for 500K, $83 ($100) for 5M and $167 ($200) for 20M, with custom plans above that (stape.io/price). AgentFirstStack's hosted service is free with fair-use limits.
Does Stape have an API or MCP server?
Yes. Stape has a REST API and an MCP server for managing a Stape account with a Stape API key, and it maintains a separate MCP server for editing Google Tag Manager with Google sign-in. A person creates the Stape account and the GTM server container first.
Related
- Server-side conversion trackingMeta, Google Ads, TikTok and GA4, counted once.
- Google Ads conversion trackingBrowser tag and server upload, tested before it counts.
- Meta Conversions APIPixel and server, deduplicated by event id.
- Google Tag Manager MCP comparedEdit GTM, or let the agent run the tag manager.
- AnalyticsAgent-first analyticsWhat it is, and what to ask of any tool.
- All servicesOne MCP server for every serviceAnalytics, tags, mail and replay tools on one key.