Webhook Reliability Is a Revenue Problem: Add Replay and Idempotency Before Your Next CRM Sync
Design martech webhooks for replay, idempotency, retries, and observability so CRM, audience, and lifecycle events do not quietly become revenue leaks.

A webhook is the moment a lead, order, opt-out, or lifecycle change becomes an action in your revenue system. If it is delayed, duplicated, or silently dropped, the visible failure may be a stale CRM record—but the business cost is misrouted follow-up, bad audience membership, and unreliable reporting.
The martech market is making this problem more urgent. Scott Brinker’s 2026 landscape counted 15,505 products, up just 0.79% (chiefmartec). The headline is “peak martech,” but the useful signal is where investment is moving: iPaaS and data integration grew 8.0% (chiefmartec). More tools means more event paths. Your integration layer is now part of the customer experience.
Vendor updates are raising the reliability bar
Shopify’s October 2026 API release makes the direction clear: Next Gen Events, the successor to classic webhooks, is generally available. Its triggers, GraphQL Admin API query, and query_filter are designed to deliver the changes and data an app actually needs (Shopify API 2026-10 release notes). That is useful—but filtering does not remove the need for durable consumption. A narrowly scoped event that never reaches your queue is still lost revenue.
HubSpot’s 2026-03 Webhooks API guide exposes the operational contract more plainly. The default delivery limit is 10 in-flight requests (HubSpot Webhooks API guide), and a request can contain up to 100 events (HubSpot Webhooks API guide). Settings changes can take up to five minutes to take effect (HubSpot Webhooks API guide). A CRM sync that assumes one event per request, instant configuration changes, or unlimited downstream capacity is not an integration; it is a timing gamble.
The same pattern appears beyond CRM. MarTech Series covered Subtext’s API and Webhooks expansion for audience imports, A/B testing, and event-driven notifications (MarTech Series). As vendors expose more activation events, marketers must decide which events are authoritative and what happens when delivery fails.
Build a failure contract, not just a happy path
Start with an event ledger. For every inbound event, store the provider, event ID, received timestamp, payload version, processing status, and downstream actions. The event ID is your idempotency key. Check and record it atomically before changing a CRM field, adding a person to an audience, or triggering a message. “We usually receive each event once” is not a reliability strategy.
Then separate acknowledgement from processing. Return a success response only after the event is durably queued, not after every downstream API call has completed. Process the queue asynchronously with bounded concurrency, exponential backoff, and a dead-letter state. Retries should be safe to repeat; a failed enrichment call must not create a second lead, duplicate a deal, or send the same message twice.
Finally, make replay a product feature. A recovery operator should be able to select a time range or event ID, inspect the original payload, re-run it in a dry-run mode, and release it with an audit trail. If replay requires a developer to search application logs and manually reconstruct JSON, your “backup” is only theoretical.
Review evidence points in the same direction. TrustRadius users value Make for flexible routing, scheduling, field customization, and API pacing (TrustRadius Make reviews). G2’s Make review summaries surface filters, retries, and error handling as practical strengths (G2 Make reviews). Buyers are comparing what happens when a connector meets reality—not just connector counts.
What to test before the next sync
Use this as a one-week integration audit:
- Duplicate test: deliver the same event twice and confirm one business action.
- Out-of-order test: send an update before the create event and verify the system parks or reconciles it.
- Throttle test: push a burst larger than the provider’s documented delivery behavior and watch queue depth, latency, and error rate.
- Replay test: recover a dead-letter event without editing the payload by hand.
- Schema test: add an unknown field, remove an optional field, and change a payload version in a staging environment.
- Revenue test: trace one event from source to CRM, audience, notification, and reporting. Confirm every handoff has an owner and a timestamp.
For adjacent reading, see the HubSpot API sunset audit and reverse ETL handoff analysis.
The winning martech stack is not the one with the most connectors. It is the one where every important event can be acknowledged, deduplicated, observed, and replayed before a customer—or a revenue report—pays for the miss.

