Comparisons

Pairs that get conflated in real conversations. Neither column wins — what decides is the requirement, and each record leads with the confusion, because the confusion is the reason the record exists at all.

Event modelling vs Snapshot modelling

What people get wrong about this pair

Events are assumed to subsume snapshots because state can be derived from them. It can, but only if every event since the beginning is retained and the derivation is cheap — and neither is usually true.

Events
Use it when

You need to know what changed, when, and in what order — and to be able to reconstruct any past state.

Snapshots
Use it when

You need the state at a point in time, cheaply, without replaying everything that produced it.

DimensionEventsSnapshots
Answers "what changed"DirectlyOnly by diffing consecutive snapshots
Answers "state on 3 March"By replaying every event up to that dateDirectly, by reading one row
StorageGrows with activityGrows with entities times periods, whether or not anything happened
Late dataCan be inserted in orderRequires recomputing the affected snapshots
Typical useBehavioural analysis, audit, reconstructionBalances, inventory, headcount, subscription state