Activity Timelines
A chronological record of what happened, which needs grouping and filtering to stay readable.
Definition
A timeline presents events in chronological order, usually newest first. It answers what changed, when, and by whom, and it becomes unusable at volume without aggregation.
Craft convention. True because the industry converged on it. Breaking it costs familiarity, not correctness.
On this plate
Reach for this when
- Users need to understand what changed and who changed it.
- Building audit and compliance surfaces.
- Readers need to answer what changed, when, and by whom.
Common mistakes
- One entry per atomic event.
- Ambiguous or unlocalised timestamps.
- No filtering at volume.
Making a timeline usable
- Group related events: 'Sam edited 12 fields' rather than twelve entries.
- Use relative time for recent events and absolute time for older ones, with the exact timestamp available on hover or focus.
- State the actor, the action and the object in a single readable sentence.
- Filter by actor, type and date range once volume passes a few dozen entries.
- Show what changed, not only that something changed, wherever the diff is small enough to display.
- Separate system events from human events visually, since they answer different questions.
Timelines that stay readable at volume
Do
- Group related events, so twelve field edits read as one change.
- Show relative time with the absolute timestamp available on hover or focus.
- Filter by actor, type and date, since volume is the usual problem.
- Say which timezone is being displayed.
Do not
- Render every system event alongside human ones with equal weight.
- Use relative time alone for anything auditable.
- Load the entire history on open.
- Let automated entries drown the two entries a person cared about.
Activity feed or audit log
They look alike and answer different questions. Building one and labelling it the other is the usual mistake.
| Question | Activity feed | Audit log |
|---|---|---|
| Who is it for | Anyone working on the object | Administrators, security, compliance. |
| What is included | Meaningful, grouped events | Everything, ungrouped, including failed attempts. |
| Can entries be hidden | Yes, filtered or collapsed | No. Completeness is the point. |
| Retention | As long as it stays useful | Fixed by policy or regulation, and stated. |
| Time display | Relative, with absolute on demand | Absolute, with the timezone named, always. |
| Export | Rarely needed | Required, in a machine-readable format. |
What each entry has to record
- The actor, distinguishing a person from an integration, an automation or the system itself.
- The action, as a verb the reader would use, not the internal event name.
- The object, linked, and still identifiable after it has been renamed or deleted.
- The timestamp, with the timezone, and a format that cannot be misread across locales.
- What changed, with before and after where the values are short enough to show.
- The source, for anything auditable: which client, which session, which API key.
Grouping is most of the design
In practice
- i.
Grouped edit events
Collaboration toolsCollapsing a burst of edits by one person within a short window into a single entry keeps the timeline about meaningful change rather than about keystrokes.
- ii.
Four hundred entries, one that mattered
AggregationAn audit trail logging every field change individually buried the status change somebody was looking for. Grouping by actor and time window made the same data readable without discarding any of it.
Commonly confused with
Close neighbours that get substituted for each other. The difference is stated first, then the condition that picks one over the other.
Notifications
PatternMessages delivered to a person because an event concerns them now.
Key difference
A timeline is a record of what happened to a thing, read on purpose. Notifications are pushed at a person because something needs their attention. The same event can appear in both, and only one of them should interrupt.
Use Activity Timelines when
- The question is what changed, when, and by whom.
- The events belong to an object rather than to a person.
- Completeness matters more than urgency.
Use Notifications when
- Someone needs to know without going to look.
- The event is addressed to a person, not filed against a record.
- You are deciding how loudly to interrupt.
Local chart
PAT·019 · Region III · Grid F1
This entry and the entries it is stated to connect with. Each line is labelled with what the connection means.
Continue from here
Each link says what the connection is, so you can tell a principle from an alternative from a thing people mix this up with.
Applies when you are designing
Principles behind this
The reasoning this solution is an application of.
- ForgivenessPRIN·006 · Principle
- ContinuityFND·008 · UI foundation
Often used with
These usually appear in the same screen or the same decision.
- AvatarCMP·024 · Component
- Data TableCMP·025 · Component
- CollaborationPAT·026 · Pattern
- FilteringPAT·004 · Pattern
Related concept
Connected closely enough to change how you apply this.
- InternationalizationWRT·006 · UX writing