Most. Help

Meta CAPI Gateway Self-Hosted Setup: AWS Deployment Walkthrough

Published Sep 13, 20267 min readIntermediate
Hand-drawn server rack connected by a dotted pipe to a window with an orange check mark while a small cloud floats above the rack, meaning a self-hosted Meta CAPI Gateway
What you'll learn
  • What the Gateway actually runs in your cloud account
  • The Events Manager provisioning flow, step by step
  • How to finish setup in the admin UI and add a custom domain
  • What the deployment costs and how it differs from direct integration
Intermediate

Meta CAPI Gateway Self-Hosted Setup: AWS Deployment Walkthrough

What You Are Actually Deploying

Meta's CAPI Gateway - Conversions API Gateway - is a self-serve bridge between the pixel and the server API: instead of building a direct Conversions API integration, you provision a server instance in your own cloud account, and Meta's Events Manager walks you through it with no coding required. Architecturally it is a redundant pair - your Meta Pixel, configured with the Gateway endpoint, sends each event both to Meta and to the Gateway; the Gateway then transforms browser events into Conversions API events and forwards them to Meta. For vocabulary, see conversions API.

Two components ship inside the deployment. The middleware module receives incoming browser events, converts them, and delivers them through the Conversions API connection; the admin portal is a web UI for operating the instance - connected pixels, event volumes, the Conversions API success rate, and notifications. One detail removes a whole class of work: the event_id deduplication key is generated and propagated automatically between the pixel and the Gateway, so the usual deduplication plumbing comes pre-built.

The Gateway is a standalone Meta product with real infrastructure requirements: it runs on AWS EKS, AWS ECS Express, or GCP, provisioned inside a cloud account that the business owns. That is what "self-hosted" means here - not a docker container on a spare VPS, but a managed stack in your cloud, with the predictable cloud costs that implies.

Provisioning from Events Manager

Documented flow starts in Events Manager's Settings tab: under Set up with Conversions API Gateway, click Get started. The wizard first asks you to review prerequisites, then offers two settings worth enabling: Enhance events, which Meta says can improve conversion attribution and event performance, and Gateway health monitoring, which lets Meta troubleshoot problems more effectively.

Then the cloud choice. The current options are AWS ECS Express - listed in Meta's setup guide as starting from 40 dollars per month - or AWS Elastic Kubernetes Service, from 300 dollars per month, both supporting up to 5,000 domains; GCP is the third listed platform. You also pick a hosting region, and Meta allows only one region per Gateway. Clicking Next opens AWS directly, or Copy URL hands the deployment link to whoever administers your organization's AWS account.

The CloudFormation Stack and the Admin UI

AWS opens a quick-create CloudFormation page with every field pre-populated, and Meta's warning is specific: leave the ProvisioningData field alone. Create the stack and wait - the creation process takes approximately 30 to 40 minutes, and the stack status reads CREATE_COMPLETE when it finishes. An Outputs tab then carries three values: BastionHost, CapigSetupURL, and InstallationLogLocation. Of the three, CapigSetupURL matters next - it opens the Conversions API Gateway Admin UI (served at the /hub/capig path of the Gateway endpoint), and Meta notes it is also visible inside Events Manager.

First login to the admin UI creates the admin account. Expect the dashboard to show zeros at first: Meta says server and browser data take from five minutes to two hours to populate, and if events still have not appeared after two hours, that is the documented point to contact Meta. From there the admin UI shows event activity from both channels and the Conversions API success rate - the percentage of browser events actually published to Meta - which is the closest thing the Gateway has to the test-events validation habit in a direct integration.

One documented gotcha trips installations that never leave the wizard: expired provisioning data caused by browser autocomplete silently refilling old values. Meta's fix is to copy the launch URL, compare it against what landed in the ProvisioningData field on the AWS page, and turn autofill off if they disagree.

Custom Domain and Multi-Pixel Management

Meta recommends a custom domain for the Gateway, noting it may help optimize data routing and reduce costs. The configuration lives in the admin UI under Domain management in the Settings sidebar, with a choice between two DNS providers: AWS Certificate Manager (ACM) or Cloudflare. You will need access to your DNS provider to complete it - the same first-party-domain discipline that Safari's ITP makes valuable, as covered in ITP cookie restrictions and server-side tracking.

Scale-out is part of the product: one Gateway instance supports multiple domains and multiple Meta Pixels. New connections, additional domains, and new pixels are managed from Events Manager's Partner Integrations section - and for a second pixel on the same instance, the Existing Conversions API Gateways section has a Connect button that onboards it without a new deployment. Within one stack, up to 5,000 domains are supported.

What It Costs - and When It Is Worth It

Per Meta's own framing, the only cost of the Conversions API Gateway is the associated cloud resource or partner fees. Self-hosted on AWS, that means the numbers from the setup guide - ECS Express from 40 dollars a month, EKS from 300 - plus whatever your region and traffic add on the AWS bill. Against that sits the maintenance reality: auto-updates exist, but they apply with host admin consent, meaning someone still owns the stack - upgrades, monitoring, region, and billing.

That trade is the whole decision. The Gateway earns its keep for teams with cloud infrastructure and many domains or pixels on one stack; the Gateway versus direct integration comparison walks the full decision. For an affiliate funnel where the goal is server-side delivery without owning infrastructure, a delivery tool is the lighter path: MOST delivers tracker postbacks to Meta's Conversions API alongside TikTok, Reddit, Pinterest, Snapchat, and OpenAI, and the free Pixel Activator covers Meta delivery for a single landing - no cloud account, no stack, no 30-minute waits.

Frequently asked questions

Sources

Sources

Was this guide helpful?
Author
Most Team
Справочная служба

Официальные руководства и глоссарий для платформы Most и Активатора пикселей.

Topic
Meta Conversions API: The Complete Guide
Main article of the topic
Related articles

Related guides

Meta Conversions API: The Complete Guide

A single entry point into the Meta Conversions API cluster: what the API does, which credentials and parameters a working event needs, how deduplication and validation fit together, and where each specific failure - a late event, a double count, an error code - has its own deep-dive guide.

10 min

Meta CAPI Batching and Rate Limits: The Delivery Rules

The Conversions API accepts several events in one request - and one bad event can fail the whole batch. This guide covers the documented batching structure, the acceptance rules that decide whether a request survives, what a rejected batch means for retry logic, and the delivery discipline that keeps a busy funnel inside the platform's limits without guessing at undocumented numbers.

6 min

Lead Ads CRM CAPI: Closing the Lead Loop in Meta

A Lead Ads form fills your CRM; the lead that actually buys is the one worth telling Meta about. This guide wires the loop: from the form's instant delivery into your CRM, through confirmation and hashing, to a documented CAPI lead event - with dedup and the seven-day window deciding how late a confirmed lead can still count.

6 min

Limited Data Use Meta: data_processing_options in Server Events

Meta's Limited Data Use flag exists so your server events can carry a US state-privacy signal - and it is three documented fields inside each event. This guide explains what data_processing_options does, the exact LDU values and country and state codes, the empty-array semantics most setups miss, and when sending the flag is the right call.

5 min