Tim Wehrle did something insane. He took a website — text, styling, full layout — and crammed it into a favicon. That tiny 16x16 pixel icon you barely notice in your browser tab? He turned it into a functional webpage.
No, this isn't a stunt from 2005. It's 2026, and developers are still finding ways to break the rules of the web. Wehrle's project is a glorious hack that proves constraints breed creativity. But it also raises a question: why would anyone do this?
The How: Compression without Apology
The trick is brutally simple. Wehrle encoded a full HTML page into a base64 string and embedded it inside a favicon using a data URL. The favicon itself is a PNG, but the pixel data doesn't draw an icon — it stores raw bytes. When the browser loads the favicon, Wehrle's JavaScript on the host page extracts those bytes, decodes them, and renders the hidden website into the DOM.
Let me repeat: the favicon acts as a tiny, invisible storage device. All 256 bytes of it (give or take, depending on compression). The result? A full webpage with bold text, a list, and even a footer. It looks primitive, but it works.
“I wanted to see if I could fit a functional website in a favicon. Turns out, you can. It’s not pretty, but it’s mine.” — Tim Wehrle
The entire process hinges on the fact that PNG compression is lossless. You can stuff arbitrary data into the pixel channels without corrupting the image — as long as you're willing to accept that the favicon will look like static noise. Which, honestly, is a small price to pay for a party trick that impresses exactly three people.
Why It Matters: The Web Is Still a Playground
You might dismiss this as a gimmick. You'd be right. But dismissing it misses the point. The web has become a corporate wasteland of bloated frameworks and tracking scripts. Every site you visit shoves megabytes of JavaScript down your throat just to display a paragraph of text. Wehrle's favicon website is a middle finger to all of that.
It reminds us that the web's foundation — HTML, CSS, a few lines of JS — is absurdly powerful. You don't need React to make a point. You don't need a build pipeline to ship a message. Sometimes, all you need is a favicon and a willingness to break the rules.
The project mirrors other extreme compression stunts: fitting an entire Linux distro into a boot sector, or encoding a movie in a QR code. These aren't practical. They're rebellions against inefficiency. And in an era where a simple news article consumes 5 MB of data, rebellion is refreshing.
The Verdict: Genius or Waste?
Let's be honest: no one is going to deploy a favicon-based website in production. The browser support is shaky (Chromium-based browsers work; Firefox might, Safari laughs and walks away). The user experience is awful — the page only appears after the favicon loads, which is a chicken-and-egg problem if the favicon itself contains the page. And if the favicon fails to load? You get nothing.
But that's not the point. The point is that someone looked at a 20-year-old spec and thought, “What if I abused this?” That curiosity is the engine of the web. It's how we got AJAX, WebSockets, and the entire modern internet. Every major innovation started as a hack no one took seriously.
I want more of this. I want developers to shove websites into cookies, into DNS records, into the spare bits of a JPEG. I want the web to feel dangerous again. Wehrle's favicon experiment is a small, weird, beautiful act of defiance. And I'm here for it.
So go try it yourself. Grab a text editor, a 16x16 PNG, and see what you can fit. Maybe it's a poem. Maybe it's your resume. Maybe it's just a single sentence: “This page was stored in a favicon.” It's more useful than most of what the modern web delivers.



