Ephemera · interface decay

UI should expire.

Generated interfaces carry a provenance — they were built at a moment, from data that was current then. As that moment recedes, the interface should say so. Not with a timestamp. With its body.

Try the decay demo →drag the slider · watch the interface age
0%fresh
25%aging
50%stale
75%decayed
100%ruin

Where decay earns its place

78%
High compulsion

Socialfeeds

Engineered timelessness. The platform hides when content was made to sustain the scroll. Decay makes that invisible manipulation visible.

Try the demo →
55%
Backlog rot

Notificationinbox

130 unread. The oldest from 3 months ago looks identical to the newest. Decay surfaces what's been silently waiting.

no demo yet
42%
Provenance

AI-generatedanswers

Generated from a query 8 months ago. The world moved on; the interface didn't. The right signal is visual, not a timestamp nobody reads.

no demo yet
63%
Procrastination

Taskbacklog

Tickets from last quarter sit next to today's priorities, indistinguishable. Decay turns ignored work into a felt weight.

See lead cards →
88%
Expiry

Ephemerallinks

A Notion invite, a Figma share, a demo link — some expired years ago. The URL still resolves; the context is long gone.

no demo yet
51%
False urgency

Newsrecirculation

A 2021 article reshared with full editorial weight in 2025. Decay would make the original publish date impossible to ignore.

no demo yet

See it in action

The decay demo

A mock social feed with real decay applied per post. Each post has a genuine timestamp. Drag the timeline slider to age the feed — or hit Live to watch effects accumulate in real time. Text peels character by character, images warp and channel-split, structural cracks propagate from edges.

Decay holds at usability floor · saturation untouched · cracks animate in