Skip to content

NewsroomEngineering notesNew

Seats are snapshots, not vendor deltas

Absolute daily counts, events on change, confirmation days for adds, and why “increase” columns lie at customer boundaries.

Engineering · Platform engineering13 Aug 20262 min read
Column typeReconciles?Sonic imports it
Absolute daily countYesYes — the source of truth
Peak / MAXIFS columnYesUsed to sanity-check
Increase / delta columnNo — breaks at customer boundariesNever

Seat files from vendors are almost always how many they had that day. They are almost never a trustworthy increase column.

Increase columns subtract the row above. At a customer boundary the row above is someone else. Peak columns and daily snapshots reconcile. Delta columns do not.

Sonic treats each snapshot as an absolute count. It compares that count to the balance on record for that customer and seat type, and it writes a seat event when the number changes. Already-imported rows are skipped by identity while the running count still advances.

Confirmation days (an organisation default, or an override per customer, or per customer and seat type) can hold an add until the new count still holds through that window. Removals are never held. If the sample does not include the last required day, the add is awaiting — not billed as a hope.

Templates are preview until you import elsewhere. Uploading a sample does nothing. Process computes uniqueness, filters, and the preview. After that, mapping edits refresh without re-arming Process. Only a new file or worksheet does.

Timestamps are UTC midnight of the calendar day on a date-only sheet. Converting through a local midnight is how you bill the wrong day.

If a seat line is surprising, look at the balance on record and the confirmation window before you rewrite the list price.

Read this on your own numbers.

Bring a contract or a carrier file — we'll run it live.

Book a demo