Skip to content
Conversions

Measure what mattered

The browser cannot confirm that money actually arrived.

Your backend posts what happened to POST /v1/events: lead.created, trial.started, account.created, order.completed, subscription.started, subscription.upgraded, subscription.cancelled, refund.created, appointment.booked. Each request carries an idempotency key, so a retry records the outcome once. The naming is recommended rather than enforced; consistency is what makes comparison across sites possible.

Server Events

  • POST /v1/events with idempotency keys
  • Nine recommended lifecycle event names
  • Custom event names and properties
  • Refunds and cancellations sent as events

How it helps

What Server Events gives you

1

A retry must not invent revenue

Every event carries an idempotency key. A payment webhook delivered three times upstream still records one order. Without that key, a retry storm closes the month above what the bank actually received.

2

Browser conversions alone are not enough

Client-side tags fire on thank-you pages that get reloaded, stop when a tab closes mid-redirect, and are removed by extensions. They never learn that the card was declined an hour later or that the order was refunded next week. Your backend sees both.

3

Event names are a contract

The recommended names map onto the semantic metrics layer, so trials started means the same thing in the brief, in the funnel and in the revenue report. Custom names are accepted; they simply do not inherit the built-in definitions.

Connect a site today. Read tomorrow's brief instead of building it.

Connect a site and the first brief arrives with the day's changes already explained — traffic separated from bots, conversions attached to revenue, and the evidence behind every sentence one click away.

Real people separated from bots Every answer shows its evidence Reveliqo runs on Reveliqo