A visual archive of how internet culture codified reality during COVID-19
Sunlight streams for us.
Before the pandemic, a GIF was a small joke. A reaction. Something you sent a friend to make them laugh. It described how we felt — but it wasn't how we felt. The sign still touched its referent. The image had a body behind it.
The white boxes drown me in.
Then lockdown happened. We stopped seeing each other. GIFs stopped being optional. They became the fastest way to say I'm tired, I'm scared, I miss you — without needing words. The looping image carried what we couldn't. Touch went digital. The sign began to distort.
The network is the message.
By mid-2021, something stranger had happened. GIFs weren't describing loneliness anymore. They were loneliness. The feeling and the image had collapsed into the same thing. The sign no longer masked reality — it masked the fact that there was no reality left to mask.
The new normal had no original.
Return to office was a GIF before it was a commute. AI was a feeling before it was a tool. Reality had become a category of content. The map had eaten the territory.
- Phase ?
- Years
- Category ?
- Classification ?
- Giphy total count ?
- Codification score ?
- Giphy ID
two words, one moment, the same screen
where does one end
and the other begin?
Research Framework
Editorial Decisions
We chose Giphy's total_count as our primary metric because it represents the supply-side of cultural codification — how many GIFs the internet produced for a feeling, not how many times those GIFs were viewed. Supply reflects collective urgency: when millions of people independently create GIFs for 'loneliness', the act of creation is itself the signal.
The codification score (total_count / 500 × 100) is deliberately simple. We capped at 500 — the maximum Giphy returns per query — not because more GIFs don't exist, but because 500 already signals cultural saturation. The score is not a measure of emotion. It is a measure of how thoroughly a feeling has been processed into image.
55 keywords were selected through iterative refinement. We excluded political party names, brand names, and proper nouns — not because they weren't culturally significant, but because they conflate political identity with emotional expression. We were tracking feeling, not faction.
All API calls used lang=en. This is a significant editorial constraint: it renders the archive anglophone by default. COVID was not an anglophone experience. The data presented here is a window, not a mirror.
total_count is supply. We do not know how many times any given GIF was actually viewed, shared, or felt. The archive tells us what was made. What was received remains unmeasured.
Credits
Research & DesignVali TheoryMcLuhan (1964) · Baudrillard (1981) Data SourceGiphy API · Search Endpoint VisualisationD3.js AnimationGSAP · CSS Keyframes AudioHowler.js · ZzFX (Frank Force) IconsPhosphor Icons TypefacesRedaction (Forest Graphic) · Space Grotesk (Florian Karsten) HostingGitHub Pages