RUM community plugins

A personal community project under @kyletaylored, MIT licensed.Not provided or supported by Datadog.

Datadog assets

Because every adapter emits the same schema, one asset pack works for all platforms. It ships as Terraform for the generated metrics plus dashboard and monitor JSON, because a community project cannot publish an integration tile.

Read these numbers correctly

They come from the browser, so they undercount: ad blockers, tabs closed before the thank-you page, and declined consent all remove sessions. Compare trends, not totals, against the platform's own order report, which stays the source of truth. The accuracy bar this project holds itself to is order count within 5% of the platform admin over seven days.

Generated metrics

RUM generated metricsare computed from 100% of ingested RUM events, not just retained sessions, kept for 15 months, and usable in anomaly and forecast monitors.

MetricEvent type and filterAggregation
rum.commerce.ordersAction, @action.name:commerce.purchasecount
rum.commerce.revenueAction, @action.name:commerce.purchasedistribution of value
rum.commerce.cart_valueAction, commerce.begin_checkoutdistribution of value (cart total at checkout)
rum.commerce.items_per_orderAction, commerce.purchasedistribution of item_count
rum.commerce.checkouts_startedAction, commerce.begin_checkoutcount
rum.commerce.checkout_errorsError, on a page carrying commerce contextcount
rum.account.loginsAction, account.logincount
rum.account.sign_upsAction, account.sign_upcount
rum.lead.leadsAction, lead.generate_leadcount

Grouped by commerce_platform, currency and store_currency only. Never by order, cart or user ID: those are unbounded, and generated metrics are billed as custom metrics. Checkout conversion is not a metric of its own — it is orders ÷ checkouts started, computed in the dashboard.

terraform/generated-metrics.tf · apply with terraform apply -var rum_application_id=<id>

Dashboard

Orders and revenue over time, average order value, checkout conversion, the funnel from product view to order, revenue next to checkout errors, checkout view LCP and INP, and a list of sessions with replays where checkout started but no order followed.

dashboards/commerce-overview.json · Dashboards → New → Import JSON

Monitors

MonitorTypeReady to use?
Order volume anomalyanomaly, weekly seasonalityYes
Revenue anomalyanomaly, weekly seasonalityYes — scope by currency on multi-currency stores
Checkout conversion below thresholdthresholdTune first. Ships with a placeholder
Checkout errors elevatedRUM thresholdTune first. Ships with a placeholder

The two threshold monitors are tagged tune-me:threshold. Pull a week of the underlying metric for the store in question and set the threshold below its normal floor: a conversion monitor set to someone else's benchmark will page constantly or never.

monitors/commerce-monitors.json

Product Analytics

Nothing extra to do. These are ordinary RUM custom actions, so they feed Product Analytics automatically.