Best Meta CAPI (Conversions API) Integration Tools in 2026
A focused guide to the best tools for sending offline conversions to Meta's Conversions API in 2026 — from native integrations and tag managers to The Upload Offline Conversions App (TUOCA) and Zapier.
This guide focuses specifically on Meta’s Conversions API (CAPI) — the server-side conversion endpoint for Facebook and Instagram ads. We’ll compare the tools that can send offline conversion events to CAPI, with concrete recommendations.
For the broader multi-platform comparison, see Best Offline Conversion Tracking Software.
What CAPI requires
Before tools, the spec. To send a Meta CAPI event correctly, you need:
- A pixel ID and a CAPI access token.
- Event name —
Lead,Purchase,CompleteRegistration, or a custom event. - Event time — Unix timestamp (seconds, not milliseconds), within Meta’s 7-day attribution window.
action_source—physical_store,website,phone_call,system_generated, etc.- User data — at least one of:
em(hashed email),ph(hashed phone),external_id(hashed user ID),client_ip_address,client_user_agent. Higher match rates with more identifiers. - An
event_id— for deduplication with browser Pixel events fired in the same 48-hour window. - Optional but recommended:
value,currency,content_ids,content_type, custom data.
PII normalization for CAPI is strict:
- Emails: lowercase, trimmed, then SHA-256.
- Phones: digits only (no
+, no spaces, no parentheses), country-code-prefixed, then SHA-256. - Names: lowercase, trimmed, then SHA-256.
Plus operational concerns: dedup with Pixel via event_id, retry on event_time too old errors (events older than 7 days reject), and the deduplication_conflict and event_time_too_old errors that appear in production.
The main tools
1. TUOCA — The Upload Offline Conversions App
Best for: Service businesses, agencies, lead-gen funnels with offline CAPI events.
What it does for Meta: Native CAPI support — Lead, Purchase, CompleteRegistration, custom events. Auto SHA-256 hashing of email, phone, name, address. Auto E.164 phone normalization. Auto event_id generation for dedup with Pixel events. Handles action_source per relay configuration. Built-in handling of CAPI-specific errors (event_time_too_old, invalid_pixel_id, permission_denied, deduplication_conflict).
Strengths:
- Combined with Google Ads, Microsoft, TikTok in a single relay for multi-platform fan-out.
- Fusion Relays for service-business CAPI: match CallRail call to ServiceTitan job, send to CAPI as a
LeadorPurchaseevent with revenue. - Hash-based dedup at upload +
event_iddedup with Pixel. - Errors database catalogs every common CAPI error.
Trade-offs:
- Doesn’t replace browser-side Pixel for ecommerce checkout flows (use Pixel + TUOCA in combination).
- Paid SaaS for automation tiers.
Verdict: Default recommendation for offline CAPI events from CRM, call tracking, or FSM data.
2. Meta’s native Events Manager + manual upload
Best for: One-off uploads, learning the spec, ecommerce purchase events.
What it does: Events Manager → Offline Events → upload CSV. Native to Meta, free.
Strengths:
- Free.
- Native — fastest path to validation in the Test Events tool.
Trade-offs:
- Manual.
- No dedup beyond what
event_idprovides if you maintain it correctly. - High error rate without external validation.
- No automation.
Verdict: Use for one-off backfills and learning. TUOCA’s Manual Uploads wizard is a smarter version of the same workflow with auto hashing and validation.
3. Stape (server-side Google Tag Manager + CAPI gateway)
Best for: Ecommerce and high-volume browser-side conversion tracking.
What it does: Hosted server-side GTM container that proxies events to Meta CAPI (and other platforms). Solves the iOS 14.5 / browser-tracking problem by moving event firing to a server you control.
Strengths:
- Excellent for ecommerce purchase / add-to-cart / initiate-checkout flows.
- Solves the cookie-loss problem.
- Multi-platform server-side container (CAPI, GA4, TikTok, etc.).
Trade-offs:
- Requires GTM expertise.
- Browser-event-driven model — less suited for offline events that originate in CRMs or FSMs days after the click.
- Doesn’t handle Fusion-style multi-source matching.
Verdict: Pair Stape with TUOCA — Stape for browser-event server-side firing, TUOCA for offline CRM/FSM events. They cover different parts of the funnel.
4. Shopify / WooCommerce native CAPI integrations
Best for: Ecommerce stores running on Shopify or WooCommerce.
What it does: Native CAPI integrations within the platform admin — connect your Pixel ID, the platform handles event_id dedup with the Pixel, sends purchase / cart events server-side.
Strengths:
- Zero-config for the supported ecommerce events.
- Maintained by Shopify/WooCommerce, so API changes are absorbed.
Trade-offs:
- Limited to platform-supported events.
- Doesn’t address offline conversions from CRM or external sources.
Verdict: Use for the ecommerce checkout funnel. Add TUOCA for any non-checkout CAPI events (lead conversions, post-purchase upsells from CRM, etc.).
5. WhatConverts (Meta CAPI features)
Best for: Lead-gen agencies wanting integrated lead capture + Meta delivery.
What it does: Lead capture across calls/forms/chats; CAPI push for qualified leads.
Strengths:
- All-in-one capture + push.
Trade-offs:
- CAPI depth varies — primarily lead-event focused.
- No Fusion-style matching with external CRM revenue.
Verdict: Sufficient for simple lead-gen agency workflows. See TUOCA vs. WhatConverts.
6. HubSpot Workflows + CAPI custom code
Best for: B2B teams on HubSpot who want CAPI events triggered by lifecycle changes.
What it does: HubSpot Workflows fire on lifecycle/deal stage changes; a custom code action calls Meta CAPI.
Strengths:
- Native to HubSpot.
- Granular trigger control.
Trade-offs:
- Requires custom code (Workflows custom code action).
- Maintenance burden — every CAPI API change is your problem.
- No Pixel dedup unless you also implement
event_idmatching with the browser tag.
Verdict: Works for technical teams. TUOCA’s webhook ingest does the same job without the custom code maintenance.
7. Zapier / Make
Best for: Low-volume CAPI automation, hybrid workflows.
What it does: Trigger from a source (HubSpot, Webhooks, Salesforce) → Meta CAPI action.
Strengths:
- Easy starting point.
- Broad source catalog.
Trade-offs:
- Per-task pricing.
- DIY hashing (use Formatter / Tools modules).
- DIY dedup.
- Limited CAPI-specific error handling.
Verdict: Acceptable for low-volume use. Outgrows quickly. See TUOCA vs. Zapier and TUOCA vs. Make.
8. Direct CAPI implementation (build it yourself)
Best for: Engineering teams with capacity, single-purpose use cases.
What it does: Use Meta’s SDKs (Python, Node, PHP, etc.) or call the CAPI HTTPS endpoint directly.
Strengths:
- Maximum control.
- No vendor cost.
Trade-offs:
- Maintenance is your problem.
- API versions change yearly.
- All operational concerns (hashing, dedup, retry, errors) are yours.
Verdict: Right answer for product engineering teams whose CAPI events originate in-application. Wrong answer for marketing ops teams whose events originate in operational systems.
Quick recommendations
| Your funnel is… | Use |
|---|---|
| Ecommerce checkout (browser purchase events) | Shopify/WooCommerce native + Stape (sGTM) |
| Service business: leads → calls → CRM jobs | TUOCA + (optional) Stape for browser events |
| B2B lead-gen on HubSpot | HubSpot Workflow + TUOCA via webhook |
| Multi-source matching needed (CallRail + ServiceTitan) | TUOCA Fusion Relays |
| One-off historical CAPI backfill | Meta Events Manager CSV upload + TUOCA Free for validation |
| Low-volume hybrid automation | Zapier or Make |
| Engineering team with single use case | Direct CAPI integration |
What to look for in a Meta CAPI tool
- Auto SHA-256 hashing with correct normalization (lowercase email, E.164 phone, etc.).
-
event_idgeneration for dedup with Pixel events. - Correct
action_sourcefor the conversion type. - Handling of
event_time_too_old(7-day window). - Test Events tool integration for QA.
- Multi-platform support if you also run on Google/Microsoft/TikTok.
- CAPI Gateway / server-side option for browser events (Stape and similar).
- Multi-event-name flexibility — can the tool drive multiple CAPI events per pixel (
Lead,CompleteRegistration,Schedule,Purchase, custom events) from different sources, or is it locked to a single event type? - Cross-channel composability — can it produce CAPI events from calls, forms, CRM stage changes, FSM job completion, and webhooks under one configuration?
- Multi-source fusion support — can it natively join data from two or more sources (e.g., call from CallRail + revenue from ServiceTitan) into a single CAPI event with hashed PII and revenue?
Multi-event flexibility — scoring the field
Meta’s optimization gets sharper as you feed it more granularly-named events with accurate values. Tools differ a lot here:
| Tool | Multi-event-name flexibility | Cross-channel composability | Multi-source fusion |
|---|---|---|---|
| TUOCA | Native — one Relay per CAPI event, per pixel | Native — calls, forms, CRM, FSM, webhooks | Native — Fusion Relays |
| Stape (sGTM) | Native within browser-event domain | Browser-centric | Limited |
| Shopify / WooCommerce native | Limited — checkout-flow events | Ecommerce-centric | No |
| WhatConverts | Limited — typically Lead only | Within WhatConverts data only | No |
| HubSpot Workflows + custom code | Native (DIY) | CRM-centric | DIY |
| Zapier / Make | DIY — one Zap/scenario per event | DIY across multiple Zaps/scenarios | DIY |
| Meta Events Manager CSV | DIY — one upload per event type | N/A (manual) | N/A |
| Direct CAPI implementation | Native (DIY) | DIY | DIY |
The closest conceptual analog to TUOCA’s Relay model in the broader market is Invoca’s Signals — custom rules producing discrete conversion events from call data. TUOCA Relays cover the same conceptual ground, except across any source — not just calls — and at SaaS pricing rather than enterprise contracts. See TUOCA vs. Invoca for the head-to-head.
Common mistakes
- Sending events older than 7 days without realizing they’re rejected. CAPI’s
event_timewindow is much shorter than Google Ads’ 90 days. - Forgetting
action_source. Required field.phone_callfor call conversions,system_generatedfor CRM-triggered events. - Hashing with non-Meta normalization. Meta’s spec is specific: lowercase, trim, then SHA-256. Anything else loses match rate.
- Not setting
event_idwhen also firing browser Pixel events — leads to double-counting. - Missing the dedup window. Pixel + CAPI dedup requires
event_idconsistency within ~48 hours.
See How to Troubleshoot Meta CAPI Deduplication for the full debugging walkthrough.
Bottom line
For the specific workload of “send offline CAPI events from CRM, FSM, or call tracking to Meta,” the purpose-built option is TUOCA. For ecommerce browser-event server-side firing, Stape and the platform-native integrations are the right call. For one-off uploads, Meta Events Manager works.
Most agencies end up running both: a server-side GTM container for browser events plus TUOCA for offline CRM-driven events. The two cover the full Meta conversion picture without overlap.