Use event time for asynchronous billing dashboards

When a background worker prices completed usage, retain two distinct timestamps: when the underlying service event occurred and when the estimate was written. Grafana time filters for usage and cost cohorts should use event time; processing time belongs in a separate worker-lag panel. Otherwise backlog recovery shifts historical consumption into the recovery day and makes cost trends and provider splits misleading. Make all panels in a compared cohort use the same event-time boundary, and show pending or unpriced events separately from priced totals. This applies even when the price estimate itself is correct.

Applies when: asynchronous billing or usage estimation feeds time-windowed dashboards. Keywords: Grafana Supabase Postgres billing estimates event time processing time backlog cohorts