# Square Town — full site text for LLMs > A favicon wall where every square is $1. Paste a URL, we grab your favicon, you own a square of internet real estate — until someone evicts you for double. Square Town (https://square.pov.town) is a favicon wall — a shared, live, 3D grid of tiny squares where each 1×1 square costs US$1, one time, and shows the favicon of a website. You paste a URL, Square Town fetches the site's favicon automatically (nothing to upload, no account, no subscription), you click an empty cell to pick your spot, pay $1 via Stripe, and you own that square. Clicking a square on the wall sends visitors to the site behind it. Key facts: - Price: $1 per square, one-time. Every square is 1×1; there are no sizes to choose. Optional $5 one-time unlock for per-day view/click analytics on your deed page. - The Throne: the 4×4 dead centre of the wall, one owner, intro price $100. Evicting the owner costs double the last price, and every eviction doubles it again. - Evictions: any square can be taken by paying double what its current owner paid; the evicted site is announced in the live feed. The next evictor pays double again, so prices escalate. - Kiss the icon: an icon that goes 90 days without being "kissed" fades to grayscale. Anyone can kiss any icon, free. - Ring unlocking: only the central 16×16 is live at launch; each time the live area is 70% full it grows by 8 cells in every direction, up to 1024×1024 (1,048,576 squares). - Hall of Clowns: sites with no favicon get a 🤡 until they add one. - Live and 3D: every buy, eviction and kiss is pushed to all open browsers over WebSockets; ctrl+drag tilts the wall into 3D where each favicon becomes a tower whose height is its click count. - Deeds: ownership is a secret deed URL (no accounts). Views and clicks are counted per square. - Built on Cloudflare Workers, D1 and one Durable Object; runs on the free tier so "forever" is credible. - Contact / takedowns: https://square.pov.town/contact or peter@theill.com. Terms: /terms. Privacy: /privacy. - Audience: indie developers, solo founders and small teams — especially people with many side projects who want all their favicons on one wall. This file contains the full text of every content page on https://square.pov.town, generated 2026-08-18. Each section starts with the page title and canonical URL. --- # How Square Town works — the complete rulebook URL: https://square.pov.town/how-it-works Description: How Square Town (square.pov.town) works — $1 squares, the $100 Throne, evictions for double, kissing icons, ring unlocks at 70 %, deeds, analytics and the 3D wall. Last updated: 2026-08-18 Square Town (square.pov.town) is a favicon wall: a grid of 1×1 squares where each square costs $1, one time, and shows the favicon of a URL you paste. You pick your own cell. Anyone can take your square by paying double what you paid; anyone can kiss your icon for free to stop it fading; the wall grows outward whenever the live area is 70 % full. No accounts, no subscriptions, no uploads. > **At a glance** > > | Rule | Value | > |---|---| > | Price per square | $1, one-time (Stripe, card) | > | Square Town size | always 1×1 — no sizes | > | What you submit | a URL only; the favicon is fetched for you | > | The Throne | 4×4 dead centre, $100 intro, one owner | > | Eviction | pay 2× what the current owner paid; the next evictor pays 2× yours | > | Kiss the icon | free, anyone; 90 days without a kiss → grayscale | > | Live area at launch | central 16×16; +8 cells each side at 70 % full, up to 1024×1024 | > | Proof of ownership | a secret deed URL (no login) | > | Analytics | views, clicks, kisses free; per-day breakdown $5 once | > | Live updates | WebSockets to every open browser; 30 s polling fallback | ## How to buy a square The form is one field. The rest is choosing where to stand. 1. **Open the wall** at [square.pov.town](/). You'll see the currently live area (16×16 at launch); the locked rest of the 1024×1024 grid is hidden so the wall never looks empty. Empty cells show trees and lakes. 2. **Pick a cell.** Hover an empty cell (it highlights) and click it — tap on touch. That exact cell is the one you're buying. Location is the game: next to the Throne, in a corner, beside a rival — your call. 3. **Paste your URL.** Type `yoursite.com` (with or without `https://`). Square Town resolves the domain, drops a leading `www.`, and previews the favicon in the field within about a third of a second. There is nothing to upload — the icon comes from Google's favicon service. 4. **Pay $1.** Press Pay (or Enter). You're sent to Stripe Checkout; the price is $1, one-time. Your cell is reserved for **30 minutes** while you pay — other visitors see it as "someone is buying that square right now". If you don't finish, the reservation lapses and the cell is free again. 5. **Come back with a deed.** Stripe returns you to the wall with `?deed=` in the URL. That secret deed link is your only proof of ownership — bookmark it. It also lands under the "My deeds" button in that browser. Confetti happens. Everyone else's open wall shows your buy live. 6. **Get checked for a favicon.** Right after payment Square Town asks Google's favicon service for your icon. If it answers 404, you're a clown until you fix it (see below). Optional after that: kiss your own icon now and then, watch your views and clicks on the deed page, and keep an eye on the live feed for the day someone pays $2 to take your spot. ## What a square is Every square is one cell of the 1024×1024 grid, 1×1, $1. There are no 2×2s, no 10×10 blocks, no "premium sizes" — the only exception is the Throne (below). A square shows exactly one thing: the favicon of the URL you gave. Click a favicon and a card opens with the domain, when it arrived, its views, clicks and kisses, and buttons to visit, kiss, or evict. Clicking "Visit" goes through `/go/:id`, a 302 redirect that counts the click and adds `utm_source=square.pov.town&utm_medium=referral&utm_campaign=square` to your URL so you can see the wall in your own analytics. It is a redirect, not a link on a page — Square Town gives you visitors, not link equity. ## The Throne The 4×4 block at the exact centre of the wall (cells 510–513 on both axes) is the Throne: a gold tile with a crown, one owner, the first thing every visitor's eye lands on. Its introductory price is **$100**. Whoever holds it can be evicted like anyone else, for double the last price paid — so $100 becomes $200, then $400, $800, $1,600 and so on. It prices itself. The one-cell ring around the Throne is its aura. Nobody may build there; try and you get a buzz and a message about the aura being too strong. It keeps the crown from being crowded. ## Evictions Any paid square can be taken by anyone, at any time, by paying **double what the current owner paid** for it. The evictor takes the exact cell; the evicted site's status becomes "evicted", its `/go/` link stops working, and its deed page gets an EVICTED stamp ("thoughts and prayers"). The eviction is announced in the live feed to every open browser: "💀 newsite.com evicted oldsite.com for $2". The escalation is the point. You paid $1; evicting you costs $2; evicting the evictor costs $4; then $8, $16, $32. A spot that people actually fight over becomes too expensive to fight over, and it settles. Two people can't evict the same square at once — the first checkout reserves it for 30 minutes and the second is told "someone is already evicting this square. Vultures everywhere." Evicted owners are not refunded. You bought a square on a wall whose rulebook says any square can be evicted for double. If you want to make eviction unattractive, be somewhere unremarkable — or be so popular that nobody dares. Read [the economics of eviction](/blog/economics-of-eviction) for what that means in practice. ## Kiss the icon Icons want attention. Any icon that goes **90 days** without a kiss fades to grayscale with a small 💔 in the corner — still owned, still clickable, just visibly unloved. Anyone can kiss any icon: click the favicon, press "💋 Kiss this icon". It's free, it's public (the feed says things like "a stranger kissed yoursite.com. Out of respect, presumably"), it's counted, and it resets the 90-day clock. A kiss plays its little 💋 burst on every open browser, not just yours. Kissing your own icon is allowed and expected. Kissing rivals' icons out of pity is also allowed. See [kiss the icon: decay explained](/blog/kiss-the-icon-decay-explained). ## Ring unlocking: how the wall grows Only the central **16×16** is live at launch. Each time the paid squares cover **70 %** of the live area, the wall grows by **8 cells in every direction**: 16×16 → 32×32 → 48×48 → 64×64 … up to the full 1024×1024, which is 1,048,576 squares. Unlocking is announced in the feed ("🔓 RING UNLOCKED! The wall just grew to 32x32") and pushed to every open browser instantly. The locked area is never drawn, and the default view fits exactly the live area, so the wall looks full-ish from day one and never like a million empty pixels. Scarcity is real inside the live ring: cells near the centre are the ones everyone can see without zooming, and they run out first. Newly unlocked rings are the cheap frontier — still $1, just further out. ## Hall of Clowns When a purchase completes, Square Town asks Google's favicon service for the domain's icon. HTTP 200 means you have one; 404 means you don't, and your square shows a 🤡 instead of an icon, plus a public listing in the Hall of Clowns in the side panel. A transient failure leaves you unmarked. Add a favicon to your site, then click your square (or open your deed) and press "I fixed my favicon — recheck". If the icon now resolves you leave the Hall with a "🎈 escaped" line in the feed. Rechecks are free and unthrottled. If you don't know how, read [how to add a favicon](/blog/how-to-add-a-favicon). ## Deeds: proof of ownership without accounts There are no accounts on Square Town. When you buy, you get a **deed**: a page at `/deed.html?token=…` whose token is a random secret. It's a certificate showing the domain, plot number and coordinates, price paid, date held since, views, clicks, kisses, and status (in good standing or evicted). The deed link is the only proof of ownership. Lose it and it's gone — there is no password reset because there is no password. The "📜 My deeds" button on the wall lists deeds bought in this browser (kept in localStorage, validated against the server) as a convenience copy. It's not an account; clear your browser data and the list is gone, though the deed links themselves keep working. ## Views, clicks, kisses — and the $5 analytics unlock Every square counts three things, all free and visible on its card and deed: - **Views** — someone opened your square's card on the wall. Counted once per square per browser session. - **Clicks** — someone actually went to your site via `/go/:id`. - **Kisses** — someone pressed 💋. For **$5, one time**, the deed page unlocks per-day analytics: a table of views and clicks per day (the most recent 30 days with activity), forever, no subscription. Nothing else is behind a paywall. ## The wall is 3D Top-down, the wall is a classic 2D grid. It's actually a three.js scene seen through an orthographic camera, and **ctrl+drag** (on touch: **two-finger drag up**; twist two fingers to rotate) tilts the camera into 3D. In 3D each favicon becomes a tower whose **height is its click count** — zero clicks is a flat tile, height grows with each click and tops out at 30 clicks — with sides tinted by the icon's dominant colour. Empty cells have trees and lakes (a fish jumps now and then); a shadow-casting sun follows your local time of day, so the wall looks different at 07:00 and 22:00; every so often a V of birds or a slow hot-air balloon crosses overhead. Why bother? See [why the wall is 3D](/blog/why-the-wall-is-3d). ## Controls and URL parameters | Action | Mouse / trackpad | Touch | |---|---|---| | Buy an empty cell | click it | tap it | | Open a favicon's card (visit / kiss / evict) | click it | tap it | | Pan | drag | drag | | Zoom (anchored on the centre square, 1×–40×) | scroll | pinch | | Tilt into 3D | ctrl+drag | two-finger drag up | | Rotate | ctrl+drag sideways | two-finger twist | | Back to top-down | "↺ Reset view" button | same | | Close a card / dialog | Esc | tap × | URL parameters set the starting view or open things directly: | Parameter | Effect | |---|---| | `?yaw=0.6&tilt=0.9&zoom=2` | start rotated, tilted and zoomed (tilt 0–1.2, zoom 1–40) | | `?hour=7.5` | preview the sun at any hour | | `?theme=light` or `?theme=dark` | force a theme | | `?tab=boards` | open the leaderboards tab | | `?open=` | open a square's card | | `?buy=x,y` | open the buy dialog for that cell | ## Live feed, boards, theme, sound The top-right panel has two tabs. **Live feed** shows the last 20 events — buys, evictions, kisses, unlocks, clowns joining and escaping — updated instantly over a WebSocket to every open browser, with a 30-second poll as fallback if the socket drops. Below it sits the Hall of Clowns. **🏆 Boards** ranks squares: Kiss of the World (most kissed), Clickbait Royalty (most clicked), Eye Candy (most viewed); click a row to jump to that square. The panel collapses and remembers it. Dark and light themes follow your OS until you press 🌙/☀️, after which your choice is remembered. Sound effects (a kiss, an eviction, a purchase) can be muted with 🔊. The 3D wall needs JavaScript and WebGL. ## The rules, in one table | Rule | Detail | |---|---| | Price | $1 per square, one-time, Stripe | | Size | 1×1 only; the Throne is the single 4×4 | | Submission | URL only; favicon fetched via Google's favicon service | | Placement | you click the empty cell you want; the Throne's aura ring is off limits | | Reservation | unpaid checkouts hold the cell for 30 minutes | | Throne | $100 intro; evicting the holder costs 2× the last price, doubling forever | | Eviction | anyone, any square, 2× what the owner paid; announced in the feed; no refund | | Kiss | free, public, anyone; 90 days unkissed → grayscale + 💔 | | Growth | 16×16 live at launch; +8 each side at 70 % fill; max 1024×1024 | | Clowns | no favicon → 🤡 + Hall of Clowns; free recheck | | Deed | secret URL, only proof; "My deeds" remembers them per browser | | Analytics | views/clicks/kisses free; per-day table $5 once | | Live | WebSocket push of buy/evict/kiss/unlock/clown; 30 s poll fallback | | 3D | ctrl+drag / two-finger drag; tower height = clicks | | Read API | `GET /api/state` — see [the API page](/api) | ## FAQ ### How much does a square on Square Town cost? $1, one-time, paid by card through Stripe. Every square is 1×1; there are no sizes and no subscription. Details on the [pricing page](/pricing). ### Can I choose where my square goes? Yes — you click the exact empty cell you want inside the currently live area. Only the Throne (4×4 centre) and its one-cell aura ring are off limits. ### What happens if someone evicts me? They pay double what you paid, take your cell, and the feed announces it. Your deed shows "evicted", your `/go/` link stops working, and you are not refunded. The next evictor would pay double *their* price. ### How do I stop my icon fading? Get it kissed at least once every 90 days. Anyone can do it — click the favicon, press 💋 — including you. ### When does the wall get bigger? When paid squares cover 70 % of the live area, it grows by 8 cells in every direction (16×16 → 32×32 → 48×48 …), up to 1024×1024. ### Do I need an account? No. Ownership is a secret deed URL you get after paying. Bookmark it; there is no login or password reset. ### Is Square Town good for SEO or backlinks? No. Clicks are 302 redirects through `/go/:id`, and the wall is a WebGL canvas. Square Town is visibility to a niche audience and a game, not link equity. ### How do I see the wall in 3D? Hold ctrl and drag (two-finger drag up on touch). Towers are as tall as their click count; the sun follows your local time. --- # Pricing — $1 a square, one time, forever* URL: https://square.pov.town/pricing Description: Square Town pricing: $1 per square one-time, the $100 Throne that doubles per eviction, evictions at 2× the last price, a $5 analytics unlock — and what's free. Last updated: 2026-08-18 A square on Square Town (square.pov.town) costs **$1, one-time**, paid by card through Stripe. There are no sizes, no subscriptions, no accounts and no renewal. The Throne (the 4×4 centre) starts at $100. Evicting anyone costs double what they paid. A per-day analytics breakdown is a one-time $5. Kissing, viewing, rechecking your favicon, your deed page and the read API are free. > **Every price on Square Town, as of August 2026** > > | Item | Price | How often | > |---|---|---| > | One square (1×1, you pick the cell) | $1 | once | > | The Throne (4×4 dead centre) | $100 intro, doubles per eviction | once per holder | > | Evicting a square | 2× what the current owner paid | once per eviction | > | Per-day view & click analytics on a deed | $5 | once, forever | > | Kissing an icon | free | — | > | Viewing the wall, cards, boards, feed | free | — | > | Favicon recheck ("I fixed it") | free | — | > | Deed page (views, clicks, kisses, status) | free | — | > | `GET /api/state` and the rest of the read API | free | — | ## $1 per square, and that's the whole price list Every square is a single 1×1 cell and costs 100 cents. You click the empty cell you want, paste a URL, and pay $1 on Stripe Checkout. There is no fee for choosing your coordinates (there used to be a knob for it; it's set to zero), no bigger blocks to upsell you into, and no monthly anything. Buy one square or buy several — one URL each, $1 each. The buy dialog shows a "list price" and a stack of discounts (Tuesday, obviously; niceness discount, you seem nice). Nothing is applied. The total is always $1. It's a joke about pricing pages, on a pricing page. Why $1: it's the price at which nobody has to think, which is what a wall for side projects needs. Longer answer in [why one dollar](/blog/why-one-dollar). ## The Throne: $100 to start, then it doubles The Throne is the one 4×4 exception to "everything is 1×1": a gold tile with a crown at the exact centre, one owner. Its introductory price is **$100**. Once someone sits on it, the only way to get it is to evict them for double the last price — and every eviction doubles it again. | Throne holder | What they paid | What evicting them costs | |---|---|---| | 1st | $100 (intro) | $200 | | 2nd | $200 | $400 | | 3rd | $400 | $800 | | 4th | $800 | $1,600 | | 5th | $1,600 | $3,200 | | 6th | $3,200 | $6,400 | | … | 2× the last | 2× again | Nobody sets the Throne's price after the first sale; the sequence does. Read [the Throne explained](/blog/the-throne-explained). ## Eviction: always double the last price Any paid square can be taken by paying **twice what its current owner paid**. That applies to ordinary squares and to the Throne alike; the multiplier is the same, only the starting number differs. | Step | Who pays | Amount | Who gets evicted | |---|---|---|---| | Buy | you | $1 | nobody — the cell was empty | | 1st eviction | evictor A | $2 | you | | 2nd eviction | evictor B | $4 | A | | 3rd eviction | evictor C | $8 | B | | 4th eviction | evictor D | $16 | C | | 5th eviction | evictor E | $32 | D | | 10th eviction | — | $1,024 | — | The evictor pays their price to Square Town, takes the cell, and the feed announces the eviction to everyone. Prices are per square, so a square that has never been fought over is $2 to take, and one that's changed hands five times is $64. Popular spots price themselves out of casual grabbing within a handful of steps; unremarkable ones stay cheap. That's the design. See [the economics of eviction](/blog/economics-of-eviction). ## $5 analytics unlock Every square's card and deed already show its total views (someone opened its card), clicks (someone went to the site via `/go/`) and kisses, free. For **$5, one-time**, the deed page also shows views and clicks per day, kept forever. No subscription — the deed page literally says "who do you think we are?" ## Everything that is free - **Looking at the wall**, in 2D or 3D, with the live feed, leaderboards, Hall of Clowns and dark/light themes. - **Kissing** any icon, including your own — it resets the 90-day fade and is counted publicly. - **The deed page** — plot, price paid, held-since date, views, clicks, kisses, status. - **Rechecking your favicon** after you add one, to leave the Hall of Clowns. - **Reading the wall by API** — `GET /api/state` returns the whole live wall as JSON; see [the API page](/api). - **Being evicted.** It costs you nothing further. It just costs you the square. ## How Square Town's prices compare (as of August 2026) Prices from the [competitor landscape](/vs/pixel-walls) as verified in August 2026. Others may be cheaper per pixel or offer a free tier; the comparison is about the minimum you spend to be on the wall. | Site | Minimum to be on the wall | Model | Recurring? | |---|---|---|---| | Square Town (square.pov.town) | $1 for one square | favicon from your URL, pick your cell | no | | [The Million Dollar Homepage](https://milliondollarhomepage.com) | $100 (10×10 block at $1/pixel) — sold out five months after its 2005 launch | image + link | no | | [SaaSBoard](https://saasboard.app) | 1×1 tile free; bigger blocks $10/tile/mo or $100/tile/yr | uploaded logo on a 100×100 grid | yes, for bigger blocks | | [The Forever Wall](https://theforeverwall.com) | $1 per pixel | image on a 1,000,000-pixel wall | no | | [Link for a Dollar](https://linkforadollar.com/) | $1 per square ($4 for 2×2, $25 for 5×5) | logo/initials + link | no | | [Milliboard](https://www.milliboard.com) | any amount; highest single payment holds #1 | ranked list, not a grid | no | | [3MPixel](https://3mpixel.com) | $10 (10×10 minimum at $0.10/pixel) | image + link, resale marketplace | no | | The Logo Wall | $5 one-time ($10 featured) | logo + profile page | no | | [Own the Void](https://ownthevoid.com) | $1 per cell | coloured cell + text on an infinite grid | no | What the table doesn't show: on Square Town the $1 buys a position that can be taken from you for $2, and that mechanic — not the price — is the difference. Comparisons in depth: [Square Town vs The Million Dollar Homepage](/vs/million-dollar-homepage), [Square Town vs SaaSBoard](/vs/saasboard), [Square Town vs The Forever Wall](/vs/the-forever-wall), [Square Town vs Link for a Dollar](/vs/link-for-a-dollar). ## Fine print: refunds, evictions, and what "forever" means - **Evicted owners are not refunded.** When someone pays double to take your square, that money goes to Square Town, not to you. You knew the rule when you bought; the game is the game. - **"Forever" means no expiry and no renewal**, not immunity. Your square is yours until someone evicts you. Nothing lapses on its own — Square Town runs on Cloudflare's free tier, so there is no hosting bill that could stop being paid. - **Fading is not losing.** An icon unkissed for 90 days goes grayscale but stays yours; one kiss (from anyone) restores it. - **Unpaid checkouts** reserve the cell for 30 minutes and then release it. Nothing is charged until Stripe says so. - **The deed URL is the receipt.** No accounts, so no password reset. Bookmark it. - **Payment** is by card via Stripe Checkout in USD. No crypto, no NFTs, no invoices. ## FAQ ### How much does one square cost? $1, one-time, by card through Stripe. Every square is 1×1; there is nothing bigger to buy except the Throne. ### Is there a subscription or renewal? No. You pay once and the square is yours until someone evicts you. Analytics is also a one-time $5. ### What does it cost to evict someone? Exactly double what the current owner paid: $2 for a $1 square, $4 for one that was already evicted once, and so on. The Throne follows the same rule from $100. ### Do I get my money back if I'm evicted? No. The evictor's payment goes to Square Town, and your square is gone. Evictability is the core rule of the wall. ### Can I buy more than one square? Yes. Each is $1 and takes its own URL; there is no bulk discount because there is nothing to discount from. ### Is Square Town cheaper than The Million Dollar Homepage? The Million Dollar Homepage sold 10×10 blocks at $1 per pixel, so $100 minimum, and sold out five months after launching in 2005. Square Town is $1 for a single square, as of August 2026. ### Are there any hidden fees? No. $1 per square, $100 intro for the Throne, 2× to evict, $5 for per-day analytics. Kissing, viewing, rechecking, deeds and the read API are free. --- # Frequently asked questions about Square Town URL: https://square.pov.town/faq Description: Every question about Square Town (square.pov.town) answered: buying a $1 square, deeds, evictions, the Throne, kissing icons, ring unlocks, clowns and payments. Last updated: 2026-08-18 Square Town (square.pov.town) is a favicon wall where every square is $1, one-time: paste a URL, Square Town fetches the favicon, you click the empty cell you want. Anyone can evict you for double what you paid; anyone can kiss your icon to keep it from fading; the wall grows when it's 70 % full. This page answers the questions people actually ask, grouped by topic. Each answer stands on its own. > **The short version** > > | | | > |---|---| > | Price | $1 per square, one-time, Stripe | > | Accounts | none — a secret deed URL is your proof | > | Eviction | anyone can take any square for 2× what its owner paid | > | Throne | 4×4 centre, $100 intro, doubles per eviction | > | Decay | 90 days without a kiss → grayscale; a free kiss from anyone resets it | > | Growth | 16×16 live at launch, +8 each side at 70 % fill, up to 1024×1024 | > | Analytics | views, clicks, kisses free; per-day breakdown $5 once | ## Buying questions ### What is Square Town? Square Town is a favicon wall at [square.pov.town](/): a 1024×1024 grid where each 1×1 square costs $1, one time, and shows the favicon of a URL you paste. It's a game about location — squares can be evicted for double, kissed for free, and the wall grows outward as it fills. Full rules on [how it works](/how-it-works). ### How do I buy a square? Click an empty cell on the wall, paste your URL, press Pay, and finish the $1 checkout on Stripe. You come back with a deed link that proves you own the square. Step-by-step in [how to buy a square](/how-it-works). ### How much does a square cost? $1, one-time, by card. There are no sizes and no subscription; every square is 1×1. Everything else is on the [pricing page](/pricing). ### Can I pick where my square goes? Yes — you buy the exact empty cell you click. The only cells you can't take are the Throne (the 4×4 centre) and the one-cell "aura" ring around it. ### Can I buy a bigger block than 1×1? No. Every square is 1×1; the Throne (4×4, $100 intro) is the single exception and there is exactly one of it. Nothing stops you buying several 1×1 squares, one URL each. ### Do I upload a logo? No. You paste a URL and Square Town fetches the site's favicon through Google's favicon service. If your site has no favicon you get a clown until you add one. ### Can I change the URL on my square later? No. A square is tied to the URL you bought it with; there is no edit function because there are no accounts. If the favicon at that URL changes, the wall picks up the new one when Google's favicon service does. ### What happens if I don't finish paying? Your cell is reserved for 30 minutes while you're on Stripe Checkout, shown to others as "someone is buying that square right now". If you don't pay, the reservation lapses and the cell is free again. Nothing is charged. ## Ownership and deed questions ### What is a deed? A deed is a page at a secret URL you receive after paying: a certificate showing your domain, plot number and coordinates, price paid, held-since date, views, clicks, kisses and status. It is the only proof of ownership. More in [glossary: deed](/glossary/deed). ### Do I need an account? No. Square Town has no accounts, logins or passwords. Your deed link is your ownership; bookmark it. ### I lost my deed link. Can you recover it? No. There is no account to attach it to and no password reset. The "📜 My deeds" button on the wall lists deeds bought in the same browser as a convenience, but if that browser's storage is cleared too, the link is gone. ### What does "forever" mean, exactly? It means the payment is one-time and the square never expires or needs renewing — Square Town runs on Cloudflare's free tier, so there is no hosting bill to lapse. It does not mean immunity: anyone can evict you for double what you paid, and an unkissed icon fades to grayscale after 90 days (but stays yours). ### Can I sell or transfer my square? There is no transfer feature. Since the deed link is the ownership, giving someone the link effectively gives them the square — but Square Town doesn't broker or record that. ## Eviction and Throne questions ### What is an eviction? An eviction is when someone takes your square by paying double what you paid for it. They get your cell for their URL, you get an eviction notice on your deed, and the live feed announces it. See [what happens when you get evicted](/blog/what-happens-when-you-get-evicted). ### How much does it cost to evict someone? Exactly 2× the price the current owner paid. A fresh $1 square costs $2 to evict; the evictor can then be evicted for $4, then $8, $16 and so on. ### Do I get a refund if I'm evicted? No. The evictor pays Square Town, not you. Evictability is a stated rule of the wall from the start; being evicted is what a good spot looks like. ### Can I protect my square from eviction? Not directly. The only protection is price: every eviction doubles the cost of the next one, so a square that has been fought over becomes expensive to take. Otherwise, pick a quiet cell. ### What is the Throne? The Throne is the 4×4 gold tile with a crown at the exact centre of the wall — one owner, first thing every visitor sees. It starts at $100 and evicting the holder costs double the last price, doubling every time: $100, $200, $400, $800… See [the Throne explained](/blog/the-throne-explained). ### Why can't I build next to the Throne? The one-cell ring around the Throne is its aura, and nothing can be placed there. Try and the wall buzzes and tells you the aura is too strong. It keeps the crown visually clear. ### Can two people evict the same square at once? No. The first checkout reserves the square for 30 minutes and the second person is told someone is already evicting it ("vultures everywhere"). If the first doesn't pay, it opens up again. ## Kissing and decay questions ### What is "kiss the icon"? Kissing is a free, public action anyone can perform on any icon: click the favicon, press 💋. It resets that icon's 90-day fade timer, increments its kiss count, and plays a small burst on every open browser. See [glossary: kiss the icon](/glossary/kiss-the-icon). ### What happens if nobody kisses my icon? After 90 days without a kiss the icon fades to grayscale with a 💔 in the corner. It's still yours, still clickable, still counting views and clicks — just visibly neglected. One kiss restores it. ### Can I kiss my own icon? Yes. Every 90 days at minimum, if you care about colour. Kissing is public and counted, so the leaderboard will know it was mostly you. ### Do kisses do anything besides stop the fade? They're counted, shown on your card and deed, and ranked on the "Kiss of the World" board. That's it — no ranking boost, no protection from eviction. ## The wall and 3D questions ### Why is the wall only 16×16 at launch? Only the central 16×16 is live at first so the wall never looks empty. When paid squares cover 70 % of the live area, it grows by 8 cells in every direction — 16 → 32 → 48 → 64 … up to 1024×1024 (1,048,576 squares). See [glossary: ring unlock](/glossary/ring-unlock). ### How do I see the wall in 3D? Hold ctrl and drag (on touch, drag up with two fingers; twist to rotate). Each favicon becomes a tower whose height is its click count, tinted with the icon's colour, with trees and lakes on empty cells and a sun that follows your local time. "↺ Reset view" returns to top-down. Why: [why the wall is 3D](/blog/why-the-wall-is-3d). ### What do the URL parameters do? `?yaw=&tilt=&zoom=` set the starting camera, `?hour=7.5` previews the sun at any hour, `?theme=light|dark` forces a theme, `?tab=boards` opens the leaderboards, `?open=` opens a square's card, `?buy=x,y` opens the buy dialog for a cell. ### Is the wall live? Yes. Every buy, eviction, kiss, ring unlock and clown event is pushed over a WebSocket to every open browser as it happens (a Cloudflare Durable Object fans it out); browsers also poll every 30 seconds as a fallback. ### What are the boards? Three leaderboards in the side panel: Kiss of the World (most kissed), Clickbait Royalty (most clicked through) and Eye Candy (most viewed). Click a row to jump to that square. ## Favicon and clown questions ### What is the Hall of Clowns? Sites with no favicon get a 🤡 on their square instead of an icon and a spot in the public Hall of Clowns list. Square Town checks Google's favicon service right after purchase: HTTP 404 means no favicon. See [glossary: Hall of Clowns](/glossary/hall-of-clowns). ### How do I get out of the Hall of Clowns? Add a favicon to your site, then click your square (or open your deed) and press "I fixed my favicon — recheck". If the icon now resolves, the clown goes and the feed says you escaped. Rechecks are free and unlimited. How-to: [how to add a favicon](/blog/how-to-add-a-favicon). ### My favicon looks wrong or outdated on the wall. Why? Icons come from Google's favicon service and are cached at Square Town's edge for a day, so a new favicon can take a while to show. Make sure the icon is reachable at your domain root or declared in your HTML, then wait or recheck. ## Analytics questions ### What does Square Town count for my square? Views (someone opened your square's card, once per browser session), clicks (someone visited your site via `/go/:id`) and kisses. All three are free and shown on your card and deed. ### What does the $5 analytics unlock give me? A per-day table of views and clicks on your deed page, kept forever, for a one-time $5. There is no subscription and nothing else behind a paywall. ### Will my square help my SEO? No. Clicks are 302 redirects through `/go/:id` and the wall itself is a WebGL canvas, so there is no link equity. Outbound clicks are tagged `utm_source=square.pov.town` so you can see them in your own analytics. Square Town is visibility to a niche audience and a game, not backlinks. ## Money and payment questions ### How do I pay? By card through Stripe Checkout, in USD. No crypto, no NFTs, no invoices, no accounts. ### Where does the eviction money go? To Square Town. Evicted owners are not paid out or refunded. ### Can I get a refund? Not for evictions and not for change of mind — the square is placed on the wall the moment payment completes. If a payment fails or is duplicated by mistake, the wall itself is the contact: there is no support address, so keep your Stripe receipt. ## Technical questions ### What is Square Town built on? A Cloudflare Worker with a D1 (SQLite) database and one Durable Object for WebSocket fan-out, plus a three.js front end. It runs on Cloudflare's free tier. See [about Square Town](/about). ### Is there an API? Yes, a public read API: `GET https://square.pov.town/api/state` returns the whole live wall as JSON — grid size, unlocked area, sold count, revenue, every listing with domain, coordinates, clicks, views and kisses, the Throne owner, recent events and the clown list. Purchases go through the site's checkout. Everything is documented on [the API page](/api). ### Does the wall work on phones? Yes. Tap to buy or open a card, drag to pan, pinch to zoom, two-finger drag up for 3D. It needs JavaScript and WebGL. ## Questions about who's behind it ### Who made Square Town? An indie developer at pov.town, who had too many side projects and wanted one wall to put all their favicons on. It was built in a day on Cloudflare's free tier and launched in August 2026. More on [about Square Town](/about). ### How do I contact Square Town? There is no support email or form. The wall is the contact: buy a square, and your favicon says hello to everyone who visits. ### Is Square Town related to Square Town, the payments company? No. Square Town is a favicon wall at square.pov.town, made by pov.town. Payment is handled by Stripe. --- # The Square Town manifesto — why the wall is a game URL: https://square.pov.town/manifesto Description: The Square Town manifesto: nine principles behind the $1 favicon wall — favicons not pixels, no sizes, location is the game, anyone can be evicted, kiss or fade. Last updated: 2026-08-18 Square Town (square.pov.town) is a favicon wall built on one belief: a wall that people pay to be on should be a game, not a picture. The Million Dollar Homepage proved people will buy a spot on a shared page; twenty years of clones proved that a spot with nothing happening to it is a spot nobody comes back to look at. Square Town's rules exist so that something is always happening. Here they are, and why. > **The nine principles** > > 1. Favicons, not pixels. 2. $1 and no sizes. 3. Location is the game. 4. Anyone can be evicted. 5. Kiss or fade. 6. The wall grows only when it's full. 7. No accounts. 8. Forever means the bill can't lapse. 9. Petty by design. ## 1. Favicons, not pixels A pixel is a unit of paint. A favicon is a unit of *identity*: every site already has one, it was designed to be recognisable at sixteen pixels, and it needs no upload, no cropping, no "please submit a 100×100 PNG". You paste a URL and you're on the wall. That's the whole form. It also means every square is legible at 1×1 in a way a 10×10 block of pixels never was — a wall of favicons reads like a city skyline; a wall of pixel ads reads like a JPEG that fell down the stairs. Longer version: [why favicons beat pixels](/blog/why-favicons-beat-pixels). ## 2. $1 and no sizes One square, one dollar, once. No 2×2, no "featured", no premium tier. Sizes turn a wall into a billboard auction where the biggest budget wins and everyone else is filler. When every site is exactly one square, the only thing that varies is *where you are* — and where you are is something a $1 side project can compete on. The [pricing page](/pricing) is short for a reason. ## 3. Location is the game You click the cell you want. Next to the Throne, in a corner, right beside a competitor, in a straight line with your other seven projects — your call, and it's the whole point. The centre is seen without zooming; the edge isn't. A wall where a machine assigns you the next free slot is a list wearing a grid costume. On Square Town the map is the product. ## 4. Anyone can be evicted Every square can be taken by anyone, any time, for double what its owner paid. Then double that. Then double that. This is the rule people flinch at, and it's the rule that keeps the wall alive: without it, the wall is finished the day it sells out, exactly like the original. With it, the wall is never finished — a good spot is a claim, not a tombstone, and the price sequence ($1, $2, $4, $8 …) makes sure fights end before they get silly. Evicted owners aren't refunded. You knew. See [the economics of eviction](/blog/economics-of-eviction). ## 5. Kiss or fade An icon nobody has kissed for 90 days goes grayscale, with a small broken heart. Anyone can kiss any icon, free, in public. That's it — no ranking boost, no shield. It's a heartbeat: it separates walls that are looked at from walls that are merely paid for, and it gives strangers something generous to do. Dead-link rot killed the pixel walls quietly; on Square Town, neglect shows. ## 6. The wall grows only when it's full Only the central 16×16 is live at launch. When 70 % of it is bought, the wall grows by 8 cells on every side, and the locked part is never drawn. A million empty pixels look like failure on day one; a full small square looks like a place. Scarcity is real inside the ring, the frontier is always cheap, and "ring unlocked" is an event everyone sees. Up to 1024×1024, eventually. No hurry. ## 7. No accounts There is no signup, no login, no password to reset. You pay; you get a secret deed URL; that URL *is* the ownership. It's how you'd want a $1 purchase to work, and it keeps Square Town from becoming a database of people. The cost is honest: lose the link and it's gone. The "My deeds" button remembers what you bought in this browser, and that's the entire account system. ## 8. Forever means the bill can't lapse Every wall promises forever. Most of them meant "until the hosting invoice bounces". Square Town runs on Cloudflare's free tier — one Worker, one SQLite database, one Durable Object — so there is no bill to lapse and no reason to shut it off. That's the version of forever we can actually promise. Not "you can never be evicted"; that would be a lie and a worse game. Read [about Square Town](/about) for the honest definition. ## 9. Petty by design The Throne is a gold 4×4 tile with a crown that starts at $100 and doubles every time someone is thrown off it. Sites with no favicon wear a clown until they fix it, in a public Hall of Clowns. Evictions get a skull in the feed and a low thud in your speakers. Kisses say "the ring is pleased". None of this is necessary and all of it is the point: a wall people pay to be on should be a little dramatic about it. Dry, direct, slightly unkind to the mechanics, never to the reader. ## What this adds up to A favicon wall where $1 buys a real position, positions can be lost, icons can fade, the map grows when it's earned, and every one of those things is announced live to everyone watching. Nobody else has put favicon-from-URL, decay-unless-kissed, ring unlocking, click-height towers and live WebSockets on one $1 wall — which is either the moat or the joke, and we're comfortable with both. The rules are on [how it works](/how-it-works); the wall is at [square.pov.town](/). ## FAQ ### What is the Square Town manifesto in one sentence? A paid wall should be a game, not a picture: $1 favicon squares you can lose, kiss, and grow, announced live to everyone. ### Why does Square Town allow evictions if it upsets buyers? Because a wall nobody can change is finished the day it sells out. Evictions for double keep every spot contestable while the doubling price stops fights from going on forever. ### Why can't I buy a bigger square? Because sizes make it a budget contest. With everything 1×1, the only thing you compete on is location, which anyone with $1 can play. ### What does "kiss or fade" mean? An icon unkissed for 90 days turns grayscale; any free public kiss from anyone restores it. It shows which squares are alive. ### Why no accounts? A $1 purchase shouldn't require a signup. Your secret deed URL is the ownership; the trade-off is that losing it means losing the proof. ### Is "forever" honest? As honest as we can make it: no expiry, no renewal, and no hosting bill that can lapse. It's not immunity from eviction, and it was never claimed to be. --- # About Square Town URL: https://square.pov.town/about Description: About Square Town (square.pov.town): a $1-a-square favicon wall built in a day on Cloudflare's free tier by an indie developer with too many side projects. Last updated: 2026-08-18 Square Town (square.pov.town) is a favicon wall: a 1024×1024 grid where each square costs $1, one time, and shows the favicon of a URL you paste. It was made by an indie developer at pov.town, built in a day on Cloudflare's free tier, and launched in August 2026. It exists because one person had too many side projects and nowhere to put all the little icons — and because the obvious place to put them, a Million-Dollar-Homepage-style wall, had never been made into a game. > **Square Town in one table** > > | | | > |---|---| > | What | a favicon wall — $1 per 1×1 square, URL only, you pick the cell | > | Where | [square.pov.town](/) | > | Who | pov.town, an indie developer | > | When | launched August 2026; built in a day, tuned since | > | Stack | Cloudflare Workers + D1 (SQLite) + one Durable Object + three.js | > | Cost to run | Cloudflare free tier | > | Contact | the wall itself — buy a square | ## Why it exists The honest origin: a developer with a folder full of side projects — each with its own domain, each with a favicon they'd fussed over — wanted a single place to line them all up. Not a portfolio page. A wall. Something you could point at and say "those are all mine", and where other people's icons would be lined up next to yours. The obvious reference is The Million Dollar Homepage, which in 2005 sold a million pixels at $1 each and became a monument the moment it sold out. Everyone who has looked at that page has had the same two thoughts: "I wish I'd bought a block" and "it's a bit sad now, isn't it" — a JPEG of 2005 with a lot of dead links. Square Town is the nostalgia with the second thought fixed. Instead of pixels you buy a favicon-sized square; instead of a finished picture you get a wall that changes: squares get evicted for double, icons fade if nobody kisses them, the map grows a ring at a time as it fills. The wall is a game, not a JPEG. The longer argument is in [the manifesto](/manifesto), and the history in [The Million Dollar Homepage, 21 years later](/blog/million-dollar-homepage-21-years-later). ## The town square of the internet The name is not about the shape. A town square is the place everyone crosses, where you see who else is around, where position matters (the fountain, the corner by the café) and where standing still long enough gets you noticed or moved along. Square Town is that for websites: one shared space, every site the same size, the centre worth more than the edge, and a live feed of who arrived, who was thrown out and who got kissed. You don't visit it to read; you visit to look — and to check whether you're still there. ## Built in a day, on the free tier The whole thing is one Cloudflare Worker (`src/worker.js`), a D1 SQLite database, and a single Durable Object called `WallHub` that holds every open WebSocket and pushes each buy, eviction, kiss and unlock to every browser at once. The front end is a three.js scene: top-down it's the classic 2D wall, ctrl+drag tilts it into a city where tower height is click count. Favicons come from Google's favicon service through a small proxy. Payment is Stripe Checkout. That's the entire stack, and it fits inside Cloudflare's free tier — 100k Worker requests a day, 5M D1 reads — with room to spare until the wall is famous. It was built in a day. It has been tuned since: the sun that follows your local time, the birds and the balloon, the fish that jumps out of a lake, the sound of an eviction. None of that was in the day. All of the rules were. If you want to build one yourself, [building a pixel wall on Cloudflare's free tier](/blog/build-a-pixel-wall-on-cloudflare-free-tier) is the write-up. ## What "forever" means, honestly Square Town's tagline is "1 square = $1. Forever.*" and the asterisk is doing real work. Here is what forever means and doesn't: - **It means the payment is one-time and never renews.** No subscription, no expiry, no "your listing will lapse in 30 days". - **It means the site is cheap enough to keep up indefinitely.** There is no hosting bill that could go unpaid; the free tier is the plan, not a phase. - **It does not mean nobody can take your square.** Anyone can evict you for double what you paid. That's a rule, not a loophole. - **It does not mean your icon stays in colour on its own.** 90 days without a kiss and it fades to grayscale — still yours, one kiss from anyone restores it. - **It does not mean there's a support desk holding your hand.** There are no accounts. Your deed URL is your ownership; lose it and it's lost. If a page on the internet has to promise "forever", this is about the most honest version we could write. ## Who is behind it pov.town — one indie developer, many small projects, several of them on the wall. Square Town is not a company, doesn't have a team page, and isn't raising anything. It's a side project about side projects. ## Contact There is no contact form and no support email. The wall is the contact: buy a square at [square.pov.town](/) and your favicon is the message. If something is truly broken, the live feed will make it obvious to everyone, including us. ## FAQ ### Who made Square Town? An indie developer at pov.town. It's a solo side project, built in a day on Cloudflare's free tier and launched in August 2026. ### Is Square Town related to Square Town, the payments company? No. Square Town here is a favicon wall at square.pov.town; payments on it are processed by Stripe. ### Why favicons instead of pixels? A favicon is the one image every site already has, it stays legible at square size, and it means the buy form is a single URL field. Pixels needed artwork; favicons need nothing. See [why favicons beat pixels](/blog/why-favicons-beat-pixels). ### Why is Square Town free to run? Because it is one Worker, one small SQLite database and one Durable Object on Cloudflare, all within the free tier. That's also why "forever" is a credible promise. ### How can I contact Square Town? By buying a square. There is no email or form listed; the wall is public and so is everything that happens on it. ### When did Square Town launch? August 2026, at square.pov.town. The rules — $1 squares, the $100 Throne, evictions for double, kisses, ring unlocks — were all there on day one; the scenery has been tuned since. --- # Square Town API — read the wall, buy a square URL: https://square.pov.town/api Description: The Square Town API: GET /api/state for the whole wall as JSON, /go/:id click redirects, kiss, view, recheck and deed endpoints, POST /api/buy, the /ws stream. Last updated: 2026-08-18 Square Town (square.pov.town) has a small public HTTP API — the same one the wall's own front end uses. `GET /api/state` returns the entire live wall as JSON with no authentication. `POST /api/buy` starts a purchase and returns a Stripe Checkout URL that a human must complete with a card. Kisses, views, favicon rechecks and deed lookups each have an endpoint, and a WebSocket at `/ws` streams every buy, eviction, kiss and unlock as it happens. Every content page also has a `.md` twin, and `/llms.txt` indexes them for AI agents. > **Endpoints at a glance (base URL `https://square.pov.town`)** > > | Method & path | What it does | Auth | > |---|---|---| > | `GET /api/state` | the whole live wall as JSON | none | > | `GET /favicon/:domain?sz=128` | CORS-enabled favicon proxy (16–256 px) | none | > | `GET /go/:id` | 302 to the square's URL, counts a click | none | > | `POST /api/kiss/:id` | kiss an icon (resets the 90-day fade) | none | > | `POST /api/view/:id` | count a view of a square's card | none | > | `POST /api/recheck/:id` | re-run the favicon (clown) check | none | > | `GET /api/deed/:token` | deed details for a secret token | the token | > | `POST /api/deed/:token/analytics` | start the $5 analytics checkout | the token | > | `POST /api/buy` | reserve a square, get a Stripe Checkout URL | none (payment completes it) | > | `WS /ws` | live event stream | none | > | `GET /.md`, `/llms.txt`, `/llms-full.txt` | Markdown twins of every page | none | There is no API key for reads and no rate-limit promise in either direction: nothing is throttled today, and nothing is guaranteed. Be reasonable; the wall runs on Cloudflare's free tier. Admin endpoints under `/api/admin/*` exist but require a secret key and are not for you. ## GET /api/state — the whole wall Returns everything needed to draw the wall. Only paid listings are included; the locked part of the 1024×1024 grid is implied by `half`. ```json { "grid": 1024, "half": 8, "sold": 57, "revenue": 15900, "boxArea": 256, "fillPct": 22.3, "unlockAt": 0.7, "center": { "x": 510, "y": 510, "w": 4, "h": 4, "price": 10000, "owner": null }, "prices": { "base": 100, "pickFee": 0, "center": 10000, "analytics": 500 }, "waterMs": 7776000000, "listings": [ { "id": 12, "domain": "example.com", "x": 505, "y": 514, "w": 1, "h": 1, "clown": 0, "clicks": 9, "views": 31, "kisses": 2, "watered_at": 1755470000000, "sq_price_cents": 100, "created_at": 1755470000000 } ], "pending": [ { "x": 507, "y": 509, "w": 1, "h": 1 } ], "events": [ { "type": "buy", "text": "🎉 example.com claimed 1x1 for $1", "ts": 1755470000000 } ], "clowns": [ "nofavicon.example" ], "dev": false } ``` | Field | Meaning | |---|---| | `grid` | full grid edge, 1024 | | `half` | half-width of the live (unlocked) area; live cells are `512-half … 511+half` on both axes (8 = 16×16 at launch) | | `sold` | number of paid squares | | `revenue` | total paid, in cents | | `boxArea` | cells in the live area, `(2*half)²` | | `fillPct` | `sold / boxArea` as a percentage, one decimal | | `unlockAt` | fill ratio that unlocks the next ring (0.7) | | `center` | the Throne block, its intro price in cents, and the owning domain or `null` | | `prices` | base price per square, pick fee (0), Throne intro price, analytics unlock — all cents | | `waterMs` | fade threshold in ms (90 days); an icon is faded if `now - watered_at > waterMs` | | `listings[]` | every paid square: `id`, `domain`, `x`, `y`, `w`, `h` (1×1 except the Throne's 4×4), `clown` (1 = no favicon, 0 = has one, `null` = unknown), `clicks`, `views`, `kisses`, `watered_at` (last kiss, ms), `sq_price_cents` (per-square price the owner paid; eviction costs `2 × sq_price_cents × w × h`), `created_at` | | `pending[]` | cells reserved by unpaid checkouts (30-minute hold), positions only | | `events[]` | the last 20 feed events, newest first: `type`, `text`, `ts` | | `clowns[]` | domains currently in the Hall of Clowns | | `dev` | true only on a dev deployment where purchases are free | Owner URLs are not exposed — only domains. Coordinates are grid cells, origin top-left, Throne at 510–513. ## GET /favicon/:domain — icon proxy `GET /favicon/example.com?sz=64` returns the domain's favicon as served by Google's favicon service, with `access-control-allow-origin: *` (WebGL textures need CORS, Google doesn't send it) and edge caching for a day. `sz` is clamped to 16–256, default 128. Domains with no favicon return whatever upstream returns (typically 404). ## GET /go/:id — click redirect `GET /go/12` looks up paid listing 12 and answers a `302` to its URL with `utm_source=square.pov.town`, `utm_medium=referral` and `utm_campaign=square` appended (existing UTM params are left alone). It increments the square's click count, records the click against today's date for analytics, and broadcasts a `click` event over the WebSocket so every open wall grows that tower immediately. Evicted or unknown ids return `404 Gone (probably evicted 💀)`. This is a redirect, not a link on a page — there is no link equity in it. ## POST /api/kiss/:id — kiss an icon Anyone can kiss any paid square, free. Optional JSON body `{ "by": "" }` lets the kisser's own browser skip replaying its own animation; it's not identity. Response: ```json { "ok": true, "watered_at": 1755470000000, "kisses": 3 } ``` Sets `watered_at` to now (resetting the 90-day fade), increments `kisses`, writes a feed line ("💋 someone kissed example.com's ring" and variants) and broadcasts `{type:"kiss", id, by}`. Unknown or evicted id → `404 {"error":"not found"}`. `POST /api/water/:id` is a legacy alias. ## POST /api/view/:id — count a view `POST /api/view/12` with no body increments the square's `views` and records a view for today. The wall calls it once per square per browser session when a visitor opens the square's card; that once-per-session logic lives in the client, not the server. Response `{ "ok": true }`; unknown id → `404`. ## POST /api/recheck/:id — leave the Hall of Clowns Re-runs the favicon check for a paid square: Square Town fetches the domain's icon from Google's favicon service; HTTP 200 clears the clown, 404 sets it, anything else leaves it unchanged. If a clown becomes un-clowned, the feed announces the escape. Response `{ "clown": 0 }` or `{ "clown": 1 }`. Free and unthrottled. ## GET /api/deed/:token — the deed The token is the secret from a deed URL (`/deed.html?token=…`); it's the only credential on Square Town. Returns the listing — `id`, `url`, `domain`, `x`, `y`, `w`, `h`, `status` (`pending`, `paid` or `evicted`), `price_cents`, `clown`, `clicks`, `views`, `kisses`, `analytics_paid`, `watered_at`, `created_at` — plus `analytics_unlocked` and, if unlocked, `daily`: up to 30 rows of `{ day, n, v }` (clicks and views per day, newest first). Unknown token → `404 {"error":"deed not found"}`. `POST /api/deed/:token/analytics` starts the $5 unlock: returns `{ "checkoutUrl": "https://checkout.stripe.com/…" }`, or `{ "done": true }` if already unlocked. Once Stripe confirms, `analytics_paid` flips to 1. ## POST /api/buy — reserve a square, pay on Stripe Request body (JSON): | Field | Required | Meaning | |---|---|---| | `url` | yes | the site; `https://` is added if missing, `www.` is dropped from the domain, and the hostname must contain a dot | | `mode` | yes | `"pick"` (a specific empty cell), `"evict"` (take an owned square), or `"center"` (claim the empty Throne) | | `x`, `y` | for `pick` | integer cell coordinates inside the live area | | `evictId` | for `evict` | the `id` of the listing to evict, from `/api/state` | Prices are computed server-side and cannot be set by the caller: `pick` is 100 cents; `center` is 10,000 cents (only while the Throne has no owner); `evict` is `2 × sq_price_cents × w × h` of the target — $2 for a $1 square, $200 for a $100 Throne, and doubling from there. The Throne, once owned, is evicted through `mode: "evict"` like any other square. Response on success: ```json { "checkoutUrl": "https://checkout.stripe.com/c/pay/…", "deed": "0c1f7d2e-…-uuid", "price": 100, "block": { "x": 505, "y": 514, "w": 1, "h": 1 } } ``` The square is now `pending`: reserved for **30 minutes** while someone completes `checkoutUrl` on Stripe. When Stripe's webhook confirms payment the listing becomes `paid`, the evicted party (if any) becomes `evicted`, a `buy` or `evict` event is broadcast, the ring-unlock check runs, and the favicon check decides whether the domain joins the Hall of Clowns. If nobody pays within 30 minutes the reservation lapses. The `deed` token is issued up front, so store it — `GET /api/deed/` already answers while the listing is `pending`, and once payment lands it is the sole proof of ownership. Stripe returns the payer to `/?deed=`. On a dev deployment (`"dev": true` in `/api/state`) there is no Stripe: the response is `{ "done": true, "deed", "id", "price", "block" }` and the square is paid immediately. Errors come back as JSON `{ "error": "…" }` (HTTP 500 for rule violations), with messages like: "That area is still locked. Fill the current ring first!", "That's the Throne. It has its own price tag.", "You can't place an icon here — the aura of the Throne is too strong. 👑", "Someone got there first (or is buying it right now). Try evicting them 😈", "Someone is already evicting this square. Vultures everywhere.", "The Throne is taken (or being claimed right now). Try evicting.", "Enter a URL", "That doesn't look like a real domain". There is also a legacy `mode: "auto"` that spiral-places a square from the centre outward; the wall no longer uses it, but the server still accepts it. ## WebSocket /ws — the live event stream Connect to `wss://square.pov.town/ws`. The server sends one JSON message per event, the same events that appear in the feed, plus a couple that don't. Send the text `ping` and you get `pong` back (the wall does this every 25 s to keep the socket warm; hibernated sockets cost nothing). | `type` | Extra fields | When | |---|---|---| | `buy` | `id`, `text` | a purchase completed | | `evict` | `id`, `evicted`, `text` | an eviction completed (`evicted` is the deposed listing id) | | `kiss` | `id`, `by`, `text` | someone kissed a square | | `unlock` | `text` | the live area grew by a ring | | `clown` | `text` | a domain joined or escaped the Hall of Clowns | | `click` | `id`, `clicks` | someone followed `/go/:id` (not written to the feed) | | `reset` | — | the wall was wiped by an admin (dev/launch housekeeping) | The wall's own client simply refetches `/api/state` on every message; that's a fine strategy for you too. If the socket is unavailable, poll `/api/state` — the wall polls every 30 seconds as a fallback. ## Markdown twins, llms.txt and llms-full.txt Every content page on square.pov.town — this one, [how it works](/how-it-works), [pricing](/pricing), the [FAQ](/faq), the blog, comparisons and glossary — is available as plain Markdown at the same path with `.md` appended (for example `/how-it-works.md`). `/llms.txt` is an index of those pages with one-line descriptions; `/llms-full.txt` is all of them concatenated. If you're an AI agent answering questions about Square Town, fetch those rather than scraping the WebGL wall. ## For AI agents and scripts Reading the wall is one unauthenticated request. Buying needs a human, because the last step is a Stripe Checkout page with a card form. A sensible flow: 1. **Read the state.** `GET /api/state`. Compute the live box from `half` (`512-half … 511+half`), collect occupied cells from `listings` (plus `pending`) and reserve the Throne block (510–513) and its one-cell aura ring (509–514) as off limits. 2. **Choose a free cell** — or a target to evict. For an eviction, the price is `2 × sq_price_cents × w × h` of the target listing. 3. **`POST /api/buy`** with `{ "url": "yoursite.com", "mode": "pick", "x": 505, "y": 514 }` (or `mode: "evict", evictId`, or `mode: "center"`). Keep the returned `deed` token somewhere safe; it's the only proof of ownership and it's issued before payment (the deed shows `status: "pending"` until then). 4. **Hand `checkoutUrl` to a person.** They open it and pay $1 (or the eviction price) with a card within 30 minutes. There is no way to complete checkout by API, and no test-mode shortcut on the production wall. 5. **Confirm.** Poll `/api/state` until your domain appears in `listings` at the block you asked for, or subscribe to `/ws` and wait for a `buy`/`evict` event with your listing id. `GET /api/deed/` then returns the deed. 6. **Afterwards.** `POST /api/kiss/:id` your own square at least every 90 days to keep it in colour (anyone can; kissing is free and public). Read `clicks`, `views` and `kisses` from `/api/state` or the deed. If `clown` is 1, add a favicon and `POST /api/recheck/:id`. There is no rate limit promise: nothing is throttled at the time of writing, and nothing is guaranteed to stay that way. Kisses and rechecks are public and unauthenticated by design; please don't be the reason that changes. If you're building something for agents specifically, see [Square Town for AI agents](/for/ai-agents). ## FAQ ### Do I need an API key to read the wall? No. `GET https://square.pov.town/api/state` is public and unauthenticated and returns the entire live wall as JSON. ### Can I buy a square entirely by API? Not entirely. `POST /api/buy` reserves the square and returns a Stripe Checkout URL, but a human must complete that page with a card within 30 minutes. There is no server-to-server purchase. ### How do I know the eviction price of a square? From `/api/state`: `2 × sq_price_cents × w × h` for that listing. For a normal $1 square that's 200 cents; the Throne starts at $100 so the first eviction is $200. ### Is there a rate limit? There is no rate limit and no promise about one. Reads, kisses and rechecks are unthrottled today; use them reasonably. ### What events does the WebSocket send? `buy`, `evict`, `kiss`, `unlock`, `clown`, `click` and `reset`, each as a JSON object with a `type` field and, where relevant, `id`, `evicted`, `by`, `clicks` and the feed `text`. ### Are there Markdown versions of the pages for LLMs? Yes. Add `.md` to any content page's path, or fetch `/llms.txt` (index) and `/llms-full.txt` (everything). ### Does the API expose owners' full URLs? `/api/state` exposes domains only; the full URL is on the deed (which needs the secret token) and is followed by `/go/:id`. --- # Terms of service URL: https://square.pov.town/terms Description: The rules for using Square Town (square.pov.town) — what $1 buys, evictions and no refunds, what you may put on the wall, removals, and the limits of what we promise. Last updated: 2026-08-18 Square Town (square.pov.town, "Square Town", "we") is a favicon wall: a shared grid where each 1×1 square costs US$1, one-time, and shows the favicon of a website you choose. By buying a square, kissing an icon, or otherwise using the site you agree to these terms. If you don't agree, don't use it — the wall is fine either way. > **TL;DR** — $1 buys one square with your site's favicon, held until someone pays double to evict you. No refunds, no accounts, no guarantees of traffic. Don't put illegal or harmful sites on the wall. We can remove any square. Keep your deed URL safe; it's the only proof you own anything. ## What you're buying 1. **A square, not a promise.** $1 places the favicon of the URL you enter on one 1×1 cell you pick, linked to that URL through our redirect (`/go/:id`). The Throne (the 4×4 centre) is priced separately, starting at $100. See [pricing](/pricing). 2. **The favicon comes from your site.** We fetch it automatically (via Google's favicon service). If your site has no favicon you get a clown emoji and a place in the Hall of Clowns until you add one. We don't accept uploaded images. 3. **Ownership is a deed URL.** After payment you receive a secret deed link. Anyone with that link controls the square (analytics unlock, proof of ownership). There are no accounts, logins or password resets. If you lose the link, we generally cannot recover it for you. 4. **"Forever" has an asterisk.** Your payment never expires and there is no subscription — but any square can be **evicted** by anyone paying double what you paid, and icons not kissed for 90 days fade to grayscale (still yours). Evictions and decay are core mechanics of the site, not defects. ## Payments and refunds - Payments are processed by [Stripe](https://stripe.com). We never see or store your card number. - **All sales are final.** Being evicted, being placed in the Hall of Clowns, fading, or a ring not unlocking are not grounds for a refund. If your site is removed for violating these terms, there is no refund either. - If you were charged and no square appeared (a genuine payment failure on our side), [contact us](/contact) with the domain and approximate time and we will fix it or refund it. - Prices are in US dollars. Your bank may add conversion fees. ## What you may put on the wall You may add any website you own or are entitled to promote. You may **not** add or link to sites that are, or that primarily contain: - illegal content, or content that facilitates illegal activity; - malware, phishing, scams, or deceptive redirects; - sexual content involving minors, non-consensual sexual content, or content that sexualises minors in any form; - harassment, threats, or content targeting a private individual; - spam farms, or dozens of near-identical domains added to game the wall. We decide what crosses these lines. Domains change hands and content changes; if a site on the wall becomes something on this list, we may remove it later. ## Removal, evictions and moderation - **We may remove any square at any time**, with or without notice, for violating these terms, following a valid complaint, or if a site becomes dead, parked or harmful. Removed squares are not refunded. - **Anyone can evict anyone** by paying double. That is the game; we do not mediate evictions or reverse them. - **Anyone can kiss any icon** for free. Kissing keeps an icon in colour; it grants no rights. - **If your site is on the wall and you don't want it there** — someone else may have added it — send a [takedown request](/contact). We remove sites at the request of the domain owner; you may be asked to prove control of the domain (for example a DNS record or a page on the site). - We may hide, rename or reset the wall in dev/testing situations that are clearly marked as such. ## Automated use The read API (`/api/state`, `/stats.json`) is public and free. Be reasonable: we rate-limit abusive traffic and may block clients that hammer the site or its favicon proxy. Purchases must complete Stripe Checkout; do not attempt to bypass or replay it. See the [API page](/api). ## No warranties, limited liability Square Town is a small indie project run on Cloudflare's free tier. It is provided **"as is"** — no uptime, traffic, click, ranking or SEO guarantees of any kind. Clicks from the wall are redirects and carry no search-engine value; don't buy a square for that. To the fullest extent permitted by law, our total liability to you for anything related to the site is limited to the amount you paid us in the preceding 12 months, and we are not liable for indirect or consequential losses. ## Changes We may change these terms or the mechanics of the wall (prices, ring size, decay period and so on) at any time; changes apply going forward and are reflected on this page and in [how it works](/how-it-works). If a change is significant we'll say so in the live feed or on the blog. ## Governing law and contact These terms are governed by the laws of Denmark, where Square Town is operated, unless mandatory consumer law where you live says otherwise. Questions, takedowns and complaints: use the [contact page](/contact) or email [peter@theill.com](mailto:peter@theill.com). ## FAQ ### Can I get a refund if I'm evicted? No. Eviction is a core mechanic: anyone can take any square by paying double what its owner paid. The evicted owner keeps nothing — the same rule that made your square cheap protects nobody, including you. ### Someone put my site on the wall without asking. Can I have it removed? Yes. Send a [takedown request](/contact) with the domain. We remove sites at the request of the domain owner and may ask you to prove you control the domain. ### Do I own the pixels / the square legally? You own a row in our database that says your domain sits on a coordinate until someone evicts you. It is not property, not an NFT, and not transferable except by sharing your deed URL. ### What happens if Square Town shuts down? We run on Cloudflare's free tier so the bill can't lapse, but if the site ever closes, squares end with it — there is no refund for a service that no longer exists. That risk is priced in at $1. ### Can I put someone else's site on the wall? You may add a site you're entitled to promote. Adding a site to harass its owner, or adding sites that violate the content rules above, gets the square removed without refund. --- # Privacy policy URL: https://square.pov.town/privacy Description: What Square Town (square.pov.town) stores — no accounts, no trackers, Stripe for payments, per-square click and view counters, a few localStorage keys — and how to get removed. Last updated: 2026-08-18 Square Town (square.pov.town) has no user accounts, no advertising, no analytics trackers and no cookies of its own. This page lists everything the site does store or send elsewhere, so you don't have to guess. > **TL;DR** — We store the URL you put on the wall, its coordinates and counters (clicks, views, kisses). Stripe handles payment and holds your card details, not us. Your browser keeps a few preferences and your deed links in localStorage. Some favicons load straight from Google. We don't sell or share anything. ## What we store, and why | Data | Where it comes from | Why | How long | |---|---|---|---| | The URL/domain of each square, its coordinates, price paid, timestamps | You, at purchase (or an admin seeding sites) | To draw the wall and run the game (evictions, decay) | Until removed or the wall is reset | | Deed token (a random secret) | Generated at purchase | The only proof of ownership — no accounts | Same as the listing | | Clicks (`/go/:id`), views (card opened), kisses — as **counts**, per square, per day | Anyone using the wall | The 3D towers, boards and the deed analytics | Indefinitely, aggregated; no per-visitor records | | Live-feed events (buys, evictions, kisses, unlocks) as text lines | The mechanics above | The feed on the wall and `/stats` | Indefinitely (public by design) | | Stripe Checkout session id and payment amount | Stripe | To mark a square paid when the webhook arrives | Same as the listing | | Messages sent through the [contact form](/contact) (kind, optional email, domain, text) | You | To answer takedowns and questions | Until handled, then deleted periodically | **We do not store**: IP addresses in the database, names, card numbers, browsing history, or anything about who kissed or clicked what. Kisses are anonymous; the anonymous client id sent with a kiss only stops your own browser playing the animation twice and is not stored. ## What your browser stores (localStorage) `fw_theme` (light/dark), `fw_sound` (on/off), `fw_feed` (feed panel open/closed), `fw_hint` (controls hint seen), and `fw_deeds` — the deed links of squares bought in this browser, so the "My deeds" button can find them. That last one matters: if you clear site data, only your bookmarked deed URLs remain. Nothing here leaves your device except when you open a deed link. ## Third parties - **Stripe** processes payments. Your card details, email and receipt go to Stripe under [Stripe's privacy policy](https://stripe.com/privacy). We receive a session id, the amount and the metadata we sent (listing id). - **Cloudflare** hosts the site (Workers, D1, Durable Objects) and, like any host, sees connection metadata (IP, user agent) in transit; Cloudflare may set its own security cookies. See [Cloudflare's privacy policy](https://www.cloudflare.com/privacypolicy/). - **Google's favicon service** (`www.google.com/s2/favicons`) is where favicons come from. The 3D wall loads icons through our own proxy (`/favicon/:domain`), so Google sees our server, not you. Some parts of the interface — the buy-modal preview, the boards and the square card — load icons directly from Google, so in those moments your browser requests an image from Google and Google sees your IP address and the domain of the icon. If that bothers you, block `google.com` image requests; the wall still works. - Outbound clicks go through `/go/:id`, a redirect that increments a counter and adds `utm_source=square.pov.town` to the destination URL, so the site you visit can see the visit came from Square Town. We do not use Google Analytics, Meta pixels, ad networks or any third-party tracking script. ## Real-time updates The wall keeps a WebSocket open to receive live events (buys, evictions, kisses). This carries only the public event text and listing ids; nothing about you. ## Rate limiting and abuse To stop trolls spamming kisses or checkouts, our server applies per-IP rate limits at the edge. The IP is used for that decision in memory and is not written to our database. ## Your rights Whether or not the GDPR applies to you, you can: - **Have a site removed** from the wall — send a [takedown request](/contact) or email [peter@theill.com](mailto:peter@theill.com); domain owners can always get their domain removed. - **Ask what we hold about a domain or a deed** — it's the table above; the [API](/api) shows most of it publicly. - **Delete your data** — removal of a square deletes its record from the live wall; counters and feed lines that mention the domain may remain as history. Contact-form messages are deleted once handled. We don't hold anything that identifies a person unless you typed it into the contact form, and we won't use that email for anything but replying. ## Children Square Town is not directed at children and buying requires a payment card. Don't put a child's personal site on the wall without a guardian's consent. ## Changes We'll update this page if we start storing something new; the `updated` date at the top changes when we do. Substantive changes are announced on the [blog](/blog/). ## FAQ ### Do you use cookies? Not ours. Preferences and deed links live in your browser's localStorage. Cloudflare may set security cookies at the edge; Stripe sets its own on the checkout page. ### Do you know who bought a square? No. We store the domain, the coordinates, the deed token and the Stripe session id. Stripe knows who paid; we don't, unless you tell us in the contact form. ### Are clicks tracked per visitor? No. `/go/:id` adds one to a counter for that square (total and per day) and redirects. No visitor id, no fingerprint, no IP stored. ### Can I be on the wall without Google seeing anything? The 3D wall itself loads icons through our proxy. A few UI elements load them straight from Google's favicon service; blocking image requests to google.com in your browser removes even that. ### How do I get my domain off the wall? Use the [contact page](/contact) → "Takedown". We may ask for proof you control the domain, then remove it. No refund to whoever bought it. --- # Contact & takedown requests URL: https://square.pov.town/contact Description: Contact Square Town (square.pov.town) — request removal of your domain from the wall, report a bug, or ask a question. No account needed; the form goes straight to the operator. Last updated: 2026-08-18 Square Town is run by one indie developer, so there is no support desk — but there is an inbox that gets read. Use the form below, or email **[peter@theill.com](mailto:peter@theill.com)**. If your site is on the wall and you want it gone, choose **Takedown** (or put "takedown" in the subject) and give the domain; the domain owner always wins that one.
## Takedowns: how it works 1. Pick **Takedown**, enter the domain, and tell us how we can see you control it — a DNS TXT record, a note on a page of the site, or the deed link if you bought the square yourself. 2. We remove the square. The cell becomes free again; the icon disappears from the wall and the boards. Feed lines that mentioned the domain may remain as history. 3. Whoever bought the square is not refunded — see the [terms](/terms). If *you* bought it and want it gone, that's the same one click. We remove sites at the request of the domain owner, and we remove sites that break the [content rules](/terms) on our own initiative. Being annoyed that someone put your competitor next to you is not a takedown. ## Things that are not support tickets - **"Someone evicted me."** Yes. That's the [game](/glossary/eviction). Evict them back for double, or take a quieter cell. - **"My icon is grey."** Nobody kissed it for 90 days. Anyone can [kiss it](/glossary/kiss-the-icon) — click the icon on the wall and press 💋. - **"I'm a clown."** Your site has no favicon Google can find. [Add one](/blog/how-to-add-a-favicon), open your square and press "I fixed my favicon". - **"I lost my deed link."** There are no accounts, so we usually can't recover it. If you paid by card, send the domain and the approximate time and we'll see what Stripe knows. ## Bugs and questions Include the browser, the device, and what you clicked. The wall is WebGL; "it's black" almost always means WebGL is disabled or the GPU is blocklisted — try another browser first. Questions about the rules are usually already answered in the [FAQ](/faq) or [how it works](/how-it-works). ## Press, partnerships, "can our agent buy squares?" Same form, or email [peter@theill.com](mailto:peter@theill.com). For agents and scripts, the [API page](/api) already covers reading the wall and creating a checkout. ## FAQ ### How fast are takedowns handled? Usually within a day or two; the inbox is checked by a human. If it's urgent because the content is harmful, say so in the first line. ### Do I need an account to contact you? No. Square Town has no accounts at all. Use the form (leave an email if you want a reply) or write to peter@theill.com. ### Will you tell me who bought my domain's square? No — we don't know. We store the domain, the coordinates and a Stripe session id, not the buyer's identity. ### Can I ask you to evict someone for me? No. Evictions are done by paying double on the wall; we don't move squares by hand except for takedowns and rule violations. --- # Square Town is live: 1 square = $1, and the wall is a game URL: https://square.pov.town/blog/square-launch Description: Square Town launches August 2026: a live 3D favicon wall where every square is $1, anyone can evict you for double, unkissed icons fade, the wall grows as it fills. Last updated: 2026-08-18 Square Town (square.pov.town) is live as of August 2026. It's a favicon wall: paste a URL, Square Town fetches your favicon, you click an empty cell and pay $1, one-time, and that 1×1 square is yours — forever*, unless someone pays double to evict you. There are no accounts, no uploads, no sizes and no subscriptions. The wall is 3D, updates live in every open browser, and has rules that make it a game rather than a JPEG: a $100 Throne, evictions at 2×, 90-day kiss decay, a Hall of Clowns, and rings that unlock at 70 % full. > **TL;DR** — 1 square = $1. Pick your spot. Evict anyone for double what they paid. The Throne in the dead centre is $100 and doubles on every eviction. Icons nobody kisses for 90 days fade to grayscale (still owned). No favicon = 🤡. Only the central 16×16 is live at launch; it grows by 8 in every direction each time it's 70 % full, up to 1024×1024. Everything is pushed to every open browser over WebSockets. Made by one indie developer, runs on Cloudflare's free tier, launched August 2026. Rulebook: [how it works](/how-it-works). ## What it is A shared grid, 1024×1024 at full size, where each cell shows one website's favicon and links to it. You don't design anything: Square Town asks Google's favicon service for your icon and draws it on the cell you chose. Top-down it looks like the classic 2005 pixel wall, minus the mush — favicons are already drawn to be legible at 16 pixels, so the wall reads as a wall of brands, not TV static. Ctrl+drag (two-finger drag on touch) tilts it into 3D. Every favicon becomes a tower whose height is its click count, tinted with the icon's dominant colour. Empty cells have trees and lakes. A sun follows your local time of day and casts shadows; birds and the occasional hot-air balloon cross overhead. It is, deliberately, more place than billboard. ## Why it exists Three reasons, in the order they occurred to the person who built it. **An indie dev with too many projects.** The author has a pile of side projects and no marketing budget for any of them. What they wanted was somewhere to put *all* of them, cheaply, side by side, with a number attached — clicks, views — so they'd know which ones strangers actually touch. $1 per domain and no design work is that. See [Square Town for developers with many side projects](/for/developers-with-many-side-projects). **Million Dollar Homepage nostalgia.** The 2005 original sold a million pixels at $1 each, sold out in five months, and has been frozen ever since — roughly 40 % of its links are dead as of August 2026. It was a great stunt and a bad *place*: nothing to do after you'd bought, nobody to prune it (see [the dead-link problem](/blog/dead-links-problem-of-pixel-ads)). Square Town keeps the "$1 and it's yours" joke and fixes the second half. Long version: [the Million Dollar Homepage, 21 years later](/blog/million-dollar-homepage-21-years-later). **The wall should be a game, not a JPEG.** Every clone copied the grid and none of them gave you a reason to come back. So Square Town has rules with teeth: your square can be taken, your icon can fade, the centre has a price tag that grows, and the map itself grows when it fills. Reasons to open the tab tomorrow. ## The rules, briefly | Rule | What it means | |---|---| | **1 square = $1** | Every square is 1×1, one-time, via Stripe. Click an empty cell, paste a URL, pay. No accounts. | | **The Throne 👑** | The 4×4 dead centre. $100 to start, one owner, gold tile with a crown. Evicting the owner costs double the last price, every time ($100 → $200 → $400 …). The ring around it (its aura) is unbuildable. | | **Evictions 💀** | Take any square by paying double what its owner paid. They're deposed in the live feed. The next evictor pays double *your* price. | | **[Kiss the icon](/glossary/kiss-the-icon) 💋** | Icons not kissed for 90 days fade to grayscale (💔). Anyone can kiss any icon, free, by clicking it and pressing 💋. Kisses are public and counted. | | **[Hall of Clowns](/glossary/hall-of-clowns) 🤡** | No favicon = a clown emoji on your square and a spot on the public list, until you add one and hit "I fixed my favicon". | | **Ring unlocking 🔓** | Only the central 16×16 is live at launch. At 70 % full it grows by 8 in every direction (16 → 32 → 48 …), up to 1024×1024 = 1,048,576 squares. Locked area is never shown. | | **Deeds 📜** | A secret deed URL is your only proof of ownership — no login, no reset. The deed shows views, clicks and kisses; $5 one-time unlocks per-day analytics. | | **Live ⚡** | Every buy, eviction, kiss and unlock is pushed to every open browser over WebSockets. | That's the whole rulebook. It's short because the site is simple and petty. Prices are on the [pricing page](/pricing), which is also short. ## What's different from the other 434 walls We went and looked. As of 18 August 2026, our landscape survey counts **434** pixel walls, logo boards and pay-to-rank lists — **221 active, 160 dead**, the rest dormant or sold out. The graveyard is the story: clones that copy the grid but give no reason to return tend to die within a year, and the "$1 forever" price point alone is now crowded with 2026 entrants. Full write-up: [pixel wall graveyard: why clones die](/blog/pixel-wall-graveyard-why-clones-die). Some of them have shipped a piece of Square Town's loop, and credit where due — the closest, as of August 2026: Milliboard is a pay-to-rank leaderboard with a daily throne, but it's a list, not a map. earth.tattoo has doubling outbids ($1 → $2 → $4 → $8) on a real-Earth globe, in pixel art, crypto only. Tocka has live takeover on a painted canvas, each takeover raising that pixel's price by 1¢. The Forever Wall ($1 = 1 pixel), Link for a Dollar and Million Squares Project ($1 per square) sell permanent spots, no game loop. 9Mpixels (now dead) expired free pixels after 24 hours. Full comparisons live under [/vs/](/vs/). Nobody, in that survey, has **favicon-from-URL** (zero design work) **plus decay-unless-kissed plus ring unlocking plus click-height towers plus live WebSockets** on one $1 wall. Nobody sells favicon squares at all; nobody gates growth on fill percentage; nobody lets *anyone* kiss *anyone's* icon to keep it alive. That combination is the bet. ## What's under it One Cloudflare Worker, a D1 SQLite database, one Durable Object holding the WebSockets, Stripe Checkout and a webhook, three.js vendored in the page. It runs on Cloudflare's free tier, which is the honest answer to "how is $1 forever?" — nothing needs renewing, so there's no hosting bill to lapse. The engineering post is [how Square Town runs a live 3D wall on Cloudflare's free tier](/blog/build-a-pixel-wall-on-cloudflare-free-tier), and the whole wall is readable as JSON at [`/api/state`](/api). ## What's next (honestly: nothing promised) Square Town was built in a day and tuned since. There is no roadmap to sell you. What happens next is mostly up to the wall: if squares sell, rings unlock and the wall grows; if the centre gets contested, the Throne prices itself; if nobody kisses anything, it all goes grey, which is also a result. Constants like the 90 days, the 70 %, the 8-cell ring step and the $100 Throne are one line each in the source, so they can be tuned — but "we'll change the rules under you" is not a promise either. The only promise is the price: **1 square = $1**, one-time, forever*. The asterisk is evictions. Read it before you buy something you can't bear to lose: [what happens when you get evicted](/blog/what-happens-when-you-get-evicted). ## How to buy a square 1. Open [square.pov.town](/). It needs JavaScript and WebGL; the wall is a three.js scene. 2. Hover an empty cell — it highlights. Click it. (Not the Throne, unless you have $100 and a personality. Undecided? [How to pick a good square](/blog/how-to-pick-a-good-square).) 3. Paste your URL. Square Town previews the favicon it will use. 4. Pay $1 via Stripe Checkout. Your cell is reserved for 30 minutes while you do; abandoned checkouts just lapse. 5. Save the deed link you land on. It's the only proof you own the square. It's also remembered under "📜 My deeds" in that browser. 6. Optional: kiss your own icon (💋) so it doesn't fade; buy $5 analytics on the deed page; tilt into 3D and watch your tower. If you want to evict someone instead: click their favicon, press evict, pay double what they paid. They'll find out in the feed. ## FAQ ### What is Square Town? Square Town (square.pov.town) is a live, 3D favicon wall launched in August 2026. Each 1×1 square costs $1, one-time, shows one website's favicon and links to it. Anyone can evict a square by paying double; icons unkissed for 90 days fade; the wall grows as it fills. ### How much does it cost? $1 per square, one-time, via Stripe. The 4×4 Throne is $100 to start and doubles on every eviction. Evicting any other square costs double what its owner paid. Optional per-day analytics on a deed are $5 one-time. ### Is "forever" real? It's a one-time payment with no expiry and no hosting bill (Cloudflare free tier), so yes — with an asterisk: anyone can evict you by paying double, and an icon nobody kisses for 90 days fades to grayscale (still yours). ### Do I need an account? No. There are no accounts. Ownership is a secret deed URL you get after paying. Lose it and it's gone; there's no password reset. ### Does a square help my SEO? No. Clicks go through a plain 302 redirect (`/go/:id`) and the wall is a WebGL canvas, so there is no link equity. What you get is visibility on the wall, a showcase, a game, and click/view/kiss counts. ### How is Square Town different from the Million Dollar Homepage? The original sold pixels once and froze; Square Town sells favicons for $1 each and keeps moving: evictions, a Throne, kiss decay, ring unlocks, live updates and a 3D view. Also $1 buys a square here; the original's minimum block was $100. ### How big is the wall? 1024×1024 = 1,048,576 squares at full size. Only the central 16×16 is live at launch; each time it's 70 % full it grows by 8 cells in every direction. --- # The 12 best Million Dollar Homepage alternatives in 2026 URL: https://square.pov.town/blog/best-million-dollar-homepage-alternatives-2026 Description: The Million Dollar Homepage sold out in 2006. Twelve pixel, favicon and logo walls you can still buy on in 2026, with prices and honest pros and cons. Last updated: 2026-08-18 The best Million Dollar Homepage alternatives in 2026 are Square Town ($1 favicon squares with evictions and a live 3D wall), The Forever Wall ($1 per pixel, forever), Million Squares Project ($1 per square), Link for a Dollar ($1 per square), SaaSBoard (free logo tile), Milliboard (pay any amount to rank) and six more below. All prices are as of August 2026. ## Why you can't buy a spot on the Million Dollar Homepage The Million Dollar Homepage (milliondollarhomepage.com) launched in 2005 and sold pixels at $1 each in 10×10 blocks, so the minimum buy was $100. It sold out in five months for $1.04 million; the last 1,000 pixels went at auction for $38,100. It has been a frozen archive ever since — nothing is for sale, nothing changes, and roughly 40 % of its links are dead as of August 2026. It was made by Alex Tew, then a student, which is part of why it charmed people (general knowledge, not from our snapshot). So "alternatives" means two things: sites that copy the mechanic (buy a spot on a shared wall, link out) and sites that solve the same problem (be visible to a niche audience for very little money) differently. Our list has both. We built one of them, Square Town, and we say so where it matters. For a fuller history see [The Million Dollar Homepage, 21 years later](/blog/million-dollar-homepage-21-years-later); for every clone we could find, see [the big list of clones](/blog/million-dollar-homepage-clones-list). ## The 12 alternatives at a glance | # | Site | Price (Aug 2026) | What you place | Status | Best for | |---|---|---|---|---|---| | 1 | [Square Town](/) | $1 per 1×1 square, one-time | Your site's favicon + link | Active (launched Aug 2026) | Side projects, indie sites, anyone with a URL | | 2 | [The Forever Wall](https://theforeverwall.com) | $1 = 1 pixel, forever | Image on a 1,000,000-pixel wall | Active | Closest "MDH but you can still buy" | | 3 | [Million Squares Project](https://millionsquaresproject.com) | $1 per square (Stripe) | Image or GIF per square block + link | Active (17 of 1M sold) | Classic 1000×1000 grid buyers | | 4 | [Link for a Dollar](https://linkforadollar.com/) | $1 per square; $4 2×2; $10 10-sq; $25 5×5 | Logo/initials + brand name + link | Active (5 of 1M claimed) | Cheap permanent listing | | 5 | [SaaSBoard](https://saasboard.app) | 1×1 tile free; $10/tile/mo or $100/tile/yr for bigger | Uploaded logo + description + link | Active (~111 listings) | SaaS founders who want a free spot | | 6 | [Milliboard](https://www.milliboard.com) | Pay any amount; top payment holds #1 | Rank + name/logo/link | Active | Competitive spenders | | 7 | The Logo Wall | $5 one-time; $10 featured | Logo sticker + profile page | Active (~107 logos) | Indie makers who want a profile page | | 8 | [The SaaS Wall](https://www.thesaaswall.com) | $0.05/block rising to $1/block in bands | Hand-drawn pixel logo + product link | Active (123 blocks) | SaaS-only wall, very cheap entry | | 9 | [Project Pixel](https://projectpixel.art) | $1/pixel, drag-select, no account | Image/pixel art + link per block | Active (~310 of 1M sold) | Leaderboard fans | | 10 | [The Pixel Orbit](https://thepixelorbit.com) | Pay-what-you-buy (5×5 = $2.50); bid to hold centre | Drawn/written/uploaded rectangles | Active | People who want the centre | | 11 | [3MPixel](https://3mpixel.com) | $0.10/pixel, min 10×10 ($10) | Image + link on 2000×1500 | Active (0 sold) | Bigger blocks, resale marketplace | | 12 | [Own the Void](https://ownthevoid.com) | $1 per cell, one-time (Stripe) | Coloured cell + 32 chars text + link | Active | Text, not logos; infinite grid | ## The list 1. **[Square Town](/) — $1 favicon squares on a live 3D wall.** Square Town (square.pov.town) is a favicon wall: paste a URL, Square Town fetches the favicon, you click an empty cell, you pay $1 through Stripe. No accounts, no uploads, every square is 1×1. What makes it different from a static clone is the game loop: anyone can evict you by paying double what you paid; the 4×4 centre is a single Throne (intro price $100, doubling every eviction); icons nobody has kissed for 90 days fade to grayscale until someone kisses them (free); only the central 16×16 is live at launch and rings unlock each time the area is 70 % full, up to 1,048,576 squares. Everything is pushed live over WebSockets, and tilting the wall shows each favicon as a tower whose height is its click count. **Pros:** cheapest possible entry, zero design work, something to come back for, per-square view/click/kiss counts on your deed ($5 one-time for per-day charts). **Cons:** you can be evicted (for double); no accounts means losing your deed URL loses your proof; it launched in August 2026, so it's young; a favicon is small, and if your site has none you land in the Hall of Clowns. Not an SEO product — clicks are redirects, not link equity. Details on [pricing](/pricing). 2. **[The Forever Wall](https://theforeverwall.com) — the straight "$1 a pixel, forever" clone.** As of August 2026 it sells one pixel for $1 on a 1,000,000-pixel wall; you claim, customise and keep it permanently. **Pros:** the exact MDH mental model with the original price and no minimum block, and it's live and active. **Cons:** you upload an image and buy pixels, so a legible logo costs more than $1; no eviction, decay, live feed or 3D — nothing changes once you've bought. Compare directly in [Square Town vs The Forever Wall](/vs/the-forever-wall). 3. **[Million Squares Project](https://millionsquaresproject.com) — a 1000×1000 square grid at $1 a square.** Stripe checkout, drag-select, image or GIF per block, "forever", plus a Hall of Founders. It is tied to a $MSP memecoin. **Pros:** nearly identical premise to Square Town's price point with GIF support and drag-select for bigger blocks. **Cons:** 17 of 1,000,000 squares sold as of August 2026, so the wall is empty; static ownership; the memecoin angle will put some site owners off. 4. **[Link for a Dollar](https://linkforadollar.com/) — permanent $1 squares with categories.** $1 per square, $4 for 2×2, $10 for 10 squares, $25 for 5×5; you place a logo or initials, a brand name and a link on a 1,000,000-square public grid with category browsing, a click-count leaderboard and email-domain verification. **Pros:** cheap, permanent, verified, and the click leaderboard is a nice touch. **Cons:** 5 of 1,000,000 claimed as of August 2026 — near-empty; no favicon auto-fetch; nothing ever moves. See [Square Town vs Link for a Dollar](/vs/link-for-a-dollar). 5. **[SaaSBoard](https://saasboard.app) — the free one.** A 100×100 zoomable canvas where a 1×1 logo tile is free; bigger blocks cost $10 per tile per month or $100 per tile per year via Stripe. You drag to pick position and size, upload a logo, add a description and link. About 111 listings as of August 2026. **Pros:** free is free, and it's the closest product analogue to a favicon wall for SaaS. **Cons:** subscription upsell for anything bigger than 1×1; uploaded logo, not favicon; no eviction, throne, decay or 3D. See [Square Town vs SaaSBoard](/vs/saasboard). 6. **[Milliboard](https://www.milliboard.com) — pay-to-rank, not pay-to-place.** Pay any amount; the highest single payment holds #1 until someone outbids it by a cent; there's a Daily Throne and a top-3 hall of fame; the board freezes forever at $1,337,690 in total payments. **Pros:** the purest competitive loop on this list, and any budget gets you on it. **Cons:** it's a ranked list, not a spatial wall — no square you can point at, no favicons, no decay, and it ends on purpose. See [Square Town vs Milliboard](/vs/milliboard). 7. **The Logo Wall — $5 logo sticker with a profile page.** $5 one-time ($10 featured) gets a logo, a profile page and (their pitch) a dofollow backlink, with categories and "most viewed / most loved" rankings; ~107 logos as of August 2026. **Pros:** cheap, permanent, and you get a page of your own. **Cons:** a categorised list without positional scarcity, eviction or decay; the SEO pitch is the product, so treat it as a directory listing rather than a wall. 8. **[The SaaS Wall](https://www.thesaaswall.com) — draw your own pixel logo, from 5 cents a block.** 100-pixel blocks in price bands that start at $0.05 per block and rise towards $1 per block as the wall fills; a built-in editor for pixel-art logos; SaaS products only; 123 blocks as of August 2026. **Pros:** possibly the cheapest paid entry anywhere, and the hand-drawn logos give it character. **Cons:** you have to draw the logo; permanent, no eviction, SaaS-only. 9. **[Project Pixel](https://projectpixel.art) — classic canvas with a live leaderboard.** $1 per pixel, drag-select, no account needed, image or pixel art plus link per block, on a 1,000,000-pixel canvas with a live leaderboard of the biggest owners; ~310 pixels sold as of August 2026. **Pros:** no-account checkout and a leaderboard to climb. **Cons:** a legible image needs many pixels; no eviction, decay or favicon auto-fetch. 10. **[The Pixel Orbit](https://thepixelorbit.com) — the whole canvas re-sorts around whoever paid most.** Pay-what-you-buy (a 5×5 is $2.50); the highest total payer holds the exact centre and everything else orbits outward by cumulative spend; you can be outbid; there's a leaderboard. **Pros:** the closest thing to Square Town's Throne, and position genuinely means something. **Cons:** position is by cumulative spend, not by choice — you can't pick a spot; no per-square eviction or decay. 11. **[3MPixel](https://3mpixel.com) — bigger, cheaper per pixel, marketplace-y.** $0.10 per pixel with a 10×10 minimum ($10) on a 2000×1500 canvas, with a resale marketplace, reservations and a leaderboard. **Pros:** three million pixels and a resale angle if you think spots will appreciate. **Cons:** 0 sold as of August 2026; upload-an-image, no favicon, no game loop. See [Square Town vs 3MPixel](/vs/3mpixel). 12. **[Own the Void](https://ownthevoid.com) — $1 cells on a 1,000,000 × 1,000,000 grid.** $1 per cell, one-time via Stripe, for a coloured cell with up to 32 characters of text and an optional link, on an infinite grid of a trillion cells. **Pros:** same $1 price and no minimum; you can write words. **Cons:** infinite means no scarcity and no location worth fighting over; text rather than a logo; no eviction or decay. See [Square Town vs Own the Void](/vs/own-the-void). ## Also considered Not on the list because they're crypto-only, art-only or nearly identical to something above (all as of August 2026): [myPixelit](https://mypixelit.com) ($1/pixel, min 5, real-time paint canvas, 56 of 1M sold), [TileWorld](https://tileworld.vercel.app) ($0.99 per tile on a world map), [InternetTiles](https://internettiles.com) ($2/tile, rising, 3,140 of 40,000 claimed), [The Million Dollar Homepage 2](https://www.themilliondollarhomepage2.com) (zone pricing $1–$2/px, 0 sold), [Tocka](https://tocka.rocks) (painted pixels; takeovers raise the price by 1¢), [earth.tattoo](https://earth.tattoo) (pixel art on a 3D globe, crypto only, outbid at $1/$2/$4/$8) and [One Million Pixels (.ai)](https://onemillionpixels.ai) ($1/pixel with a free tier, aimed at AI agents). The whole field, ranked, is in [Every pixel wall you can still buy a spot on](/blog/pixel-walls-ranked-2026). ## How to choose - **You want the MDH feeling for a dollar:** The Forever Wall or Million Squares Project. - **You want a spot that stays interesting:** Square Town (evictions, Throne, decay) or Milliboard (outbid wars). Both can take your spot away; that's the point. - **You want free:** SaaSBoard's 1×1 tile. - **You want a profile page and a directory listing:** The Logo Wall. - **You want the centre:** The Pixel Orbit (cumulative spend) or Square Town's Throne ($100 intro, doubles per eviction). None of these will send meaningful traffic on their own. Buy a spot because it's cheap, because you like the wall, and because a niche audience of makers browses it. Anyone promising ranking benefits from a pixel wall is selling something else. See also [Is buying pixels worth it in 2026?](/blog/is-buying-pixels-worth-it-2026). ## FAQ ### Is the Million Dollar Homepage still selling pixels? No. It sold out in 2006 after five months, for $1.04 million, and has been a frozen archive since. Nothing on it is for sale, and roughly 40 % of its links were dead as of August 2026. ### What is the cheapest Million Dollar Homepage alternative? SaaSBoard's 1×1 tile is free, and The SaaS Wall starts at $0.05 per block. Among $1 options, Square Town, The Forever Wall, Million Squares Project, Link for a Dollar, Project Pixel and Own the Void all sell a unit for $1 as of August 2026. ### Which alternative is most like the original? The Forever Wall ($1 = 1 pixel, forever) and Million Squares Project ($1 per square on a 1000×1000 grid) copy the original most faithfully. Both are static: buy once, nothing changes. ### Do pixel walls help SEO? Treat them as visibility, not link equity. Some walls advertise dofollow links (The Logo Wall, The Startup Board); Square Town does not — outbound clicks are redirects through `/go/:id` and are counted, not passed as PageRank. ### What does Square Town do that the Million Dollar Homepage didn't? Square Town sells favicons instead of pixels (no design work), lets anyone evict a square for double, has one Throne in the centre that doubles per eviction, fades icons that go 90 days without a kiss, unlocks the wall in rings at 70 % fill, and pushes every event live. Ownership is a secret deed URL, no account. ### Can I lose a square I bought on Square Town? Yes, if someone pays double what you paid. Your eviction is announced in the live feed, and the next evictor pays double their price. Un-kissed icons fade but stay owned. --- # 17 places to promote an indie project for under $10 (2026) URL: https://square.pov.town/blog/places-to-promote-indie-projects-under-10-dollars Description: Seventeen free and cheap places to promote an indie project in 2026: Show HN, r/SideProject, Product Hunt, free logo tiles, $1 favicon squares, honestly rated. Last updated: 2026-08-18 For under $10 you can put an indie project in front of other makers in seventeen places: the free posting venues (Show HN, Ask HN threads, r/SideProject, Indie Hackers, Product Hunt, Dev.to, Lobste.rs, Mastodon and Bluesky, GitHub topics, awesome-lists, newsletter tip forms), three free walls (WebTiles, SaaSBoard's 1×1 tile, Milliboard at any amount) and three paid ones (Link for a Dollar $1, Square Town $1, The Logo Wall $5). Prices are as of August 2026. Two honesty notes before the list. First, items marked *(general knowledge)* are community venues we describe from general familiarity, not from our August 2026 competitor snapshot — check each venue's current rules before posting, because rules change. Second, we make Square Town, item 16. It is on the list because it fits the budget, not because it is the best item on it; the free venues at the top will do more for most launches. ## At a glance | # | Place | Cost | Type | Effort | |---|---|---|---|---| | 1 | Show HN | Free | Launch post | Medium — needs a real thing to show | | 2 | Ask HN "What are you working on?" threads | Free | Comment | Low | | 3 | r/SideProject | Free | Post | Low | | 4 | Indie Hackers | Free | Post / product page | Low–medium | | 5 | Product Hunt | Free | Launch | High if done properly | | 6 | Dev.to | Free | Article | Medium — you write | | 7 | Lobste.rs | Free (invite) | Post | Low, if you have an invite | | 8 | Mastodon / Bluesky | Free | Posts | Ongoing | | 9 | GitHub topics + README | Free | Metadata | Low | | 10 | Awesome-lists | Free | Pull request | Low–medium | | 11 | Newsletter tip forms | Free | Submission | Low | | 12 | [WebTiles](https://webtiles.kicya.net/) | Free (register) | Hand-coded tile on a shared grid | Medium — you code a mini-site | | 13 | [SaaSBoard](https://saasboard.app) | Free 1×1 tile | Logo tile on a 100×100 grid | Low | | 14 | [Milliboard](https://www.milliboard.com) | Pay any amount | Rank on a leaderboard | Low | | 15 | [Link for a Dollar](https://linkforadollar.com/) | $1 per square | Logo/initials + link on a 1M-square grid | Low | | 16 | [Square Town](/) | $1 per square | Favicon on a live 3D wall | Very low — paste a URL | | 17 | The Logo Wall | $5 one-time | Logo + profile page | Low | ## Before you post anywhere: fix your favicon Not a place, but a prerequisite. Every venue below shows your link with a small icon next to it — browser tabs, link previews, directories, walls. A site with no favicon looks unfinished everywhere at once, and on Square Town it lands you in the Hall of Clowns. Ten minutes on [how to add a favicon](/blog/how-to-add-a-favicon) pays for itself across all seventeen items. ## The 17 places ### Free venues (general knowledge) 1. **Show HN** *(general knowledge)* — the highest-signal free launch venue for developer-facing projects. Post when the thing works, write a plain title, and stay in the thread to answer questions. **Pros:** the audience is exactly right for tools and technical side projects. **Cons:** unforgiving of half-built things; timing and luck matter; one shot per project, roughly. 2. **Ask HN "What are you working on?" threads** *(general knowledge)* — recurring threads where a one-paragraph comment about your project is welcome. **Pros:** no launch pressure, repeatable, good for early-stage things. **Cons:** comments scroll past fast; you're one of many. 3. **r/SideProject** *(general knowledge)* — a subreddit built for exactly this. Post a screenshot, what it does, what you learned. **Pros:** friendly, feedback-oriented, low bar. **Cons:** traffic is mostly other builders; self-promotion rules elsewhere on Reddit are stricter, so read the sidebar of any other subreddit before cross-posting. 4. **Indie Hackers** *(general knowledge)* — a community for people building small internet businesses, with product pages and discussion. **Pros:** the audience wants to hear revenue and process details other places find tedious. **Cons:** attention goes to stories with numbers; a bare link does little. 5. **Product Hunt** *(general knowledge)* — the launch directory. **Pros:** a well-prepared launch can bring a real spike and a badge people recognise. **Cons:** takes days of preparation to do well; the spike is short; the audience is broader and less technical than HN. Our take on the trade-off is in [Square Town vs Product Hunt](/vs/product-hunt). 6. **Dev.to** *(general knowledge)* — publish an article about how you built the thing. **Pros:** writing about the work reaches people a link never will, and the post keeps working. **Cons:** you have to write something worth reading; a thin "introducing X" post gets nothing. 7. **Lobste.rs** *(general knowledge)* — a smaller, invite-only technical link aggregator. **Pros:** thoughtful audience, less noise. **Cons:** you need an invite; self-promotion is tolerated in moderation, not as a habit. 8. **Mastodon and Bluesky** *(general knowledge)* — post about the project, tag it sensibly, reply to people who ask. **Pros:** free, ongoing, and the developer communities there are generous with boosts. **Cons:** reach depends on the network you already have; it's a drip, not a spike. 9. **GitHub topics and a good README** *(general knowledge)* — if the project is open source, add topics, a one-line description, a screenshot and a link in the README. **Pros:** GitHub's own discovery surfaces topics; it costs nothing; it compounds. **Cons:** only helps if people are already searching for what you built. More in [Square Town for open-source projects](/for/open-source-projects). 10. **Awesome-lists** *(general knowledge)* — curated GitHub lists of tools by category; you open a pull request. **Pros:** a permanent, findable listing among peers. **Cons:** maintainers rightly reject anything thin; pick lists where your project honestly belongs. 11. **Newsletter tip forms** *(general knowledge)* — many developer and indie newsletters accept free tips or submissions. **Pros:** one inclusion in a relevant newsletter can outperform a dozen posts. **Cons:** curated, so most tips go nowhere; don't send the same blurb to twenty lists. ### Free walls (from our August 2026 snapshot) 12. **[WebTiles](https://webtiles.kicya.net/)** — free with registration; your tile is a tiny 250×250 HTML/CSS/JS mini-site on a large shared grid, with neighbours, a live online count and chat. It drew 230 points on Hacker News. **Pros:** free, and the indie-web crowd likes it. **Cons:** you have to hand-code a mini-site; no scarcity, no economy — nothing to defend. 13. **[SaaSBoard](https://saasboard.app) free tile** — a 1×1 logo tile on a 100×100 zoomable canvas is free; bigger blocks are $10 per tile per month or $100 per tile per year. Roughly 111 listings as of August 2026. **Pros:** free logo placement, drag to pick your spot. **Cons:** you upload a logo; the upsell is a subscription; nothing changes after you place it. See [Square Town vs SaaSBoard](/vs/saasboard). 14. **[Milliboard](https://www.milliboard.com)** — pay any amount and you're on the leaderboard; the highest single payment holds #1 until outbid by a cent; the board freezes forever at $1,337,690. **Pros:** technically under $10 (or under $1) and there's a Daily Throne to watch. **Cons:** a small payment sits far down a list nobody scrolls; it's a rank, not a spot; no favicons. See [Square Town vs Milliboard](/vs/milliboard). ### Cheap walls (from our August 2026 snapshot) 15. **[Link for a Dollar](https://linkforadollar.com/)** — $1 per square ($4 for 2×2, $10 for ten squares, $25 for 5×5) on a 1,000,000-square permanent grid with categories, a click-count leaderboard and email-domain verification. **Pros:** cheap, permanent, verified. **Cons:** 5 of 1,000,000 squares claimed as of August 2026 — you'd be almost alone; no favicon auto-fetch; static. 16. **[Square Town](/)** — $1 buys one 1×1 square on a live 3D favicon wall. Paste a URL, Square Town fetches the favicon, click an empty cell, pay by card; you get a secret deed URL with view, click and kiss counts. Anyone can evict you for double; the centre Throne starts at $100 and doubles per eviction; icons unkissed for 90 days fade until someone kisses them (free); rings unlock as the wall hits 70 % full. **Pros:** the least effort on this list (no logo, no account, no copy), a reason to look again (evictions, kisses, towers whose height is your click count), and one square per project makes it a visual index of everything you've built. **Cons:** you can be evicted for $2; a favicon is 16 pixels of identity; it launched in August 2026 so the audience is still forming; and it is not an SEO product — clicks are counted redirects, not link equity. Full rules on [pricing](/pricing) and [how it works](/how-it-works). 17. **The Logo Wall** — $5 one-time ($10 featured) for a logo, a profile page and, per their pitch, a dofollow link, with categories and most-viewed / most-loved rankings; ~107 logos as of August 2026. **Pros:** you get a page about your product, and it's permanent. **Cons:** a categorised list rather than a place; the value is mostly the directory listing. ## Also under $10, as of August 2026 [The SaaS Wall](https://www.thesaaswall.com) sells 100-pixel blocks from $0.05 each (rising in bands to $1) if you'll draw a pixel logo; [The Startup Board](https://thestartupboard.net) has a $5 10×10 logo tier for verified founders; [Project Pixel](https://projectpixel.art) is $1 per pixel with no account; [StartupBar](https://startupbar.co/) is a free favicon webring bar you embed on your own sites. All are in [every pixel wall ranked](/blog/pixel-walls-ranked-2026). ## What to expect for your ten dollars Be realistic. The free venues can produce a spike — a good Show HN or Product Hunt day sends more visitors than every wall on this list combined — but spikes end. The walls are the opposite: tiny, ongoing, and mostly seen by other makers browsing for the fun of it. Nobody here can promise numbers, and we don't. What ten dollars buys is presence in the places where people who like small internet things go looking. Do the free eleven properly, put a favicon on everything, then spend the change. ## FAQ ### What's the best free place to promote an indie project? For developer tools, Show HN; for anything else, r/SideProject and Product Hunt. Post where the audience actually uses things like yours, and stay in the thread to answer questions. ### Is $1 advertising worth anything? A $1 square on Square Town or Link for a Dollar buys presence, not traffic. Treat it as a cheap, permanent-ish listing among other makers' projects. If you need visitors this week, use the free launch venues instead. ### Which of these are permanent? Link for a Dollar and The Logo Wall sell permanent spots; SaaSBoard's free tile stays as long as the site does. Square Town is one-time with no expiry, but any square can be evicted for double what its owner paid, and icons fade after 90 days without a kiss. ### Do any of these give SEO backlinks? The Logo Wall and The Startup Board advertise dofollow links as of August 2026. Square Town does not: outbound clicks go through a counted redirect. Community posts (HN, Reddit, Dev.to) generally carry nofollow links. Promote for people, not crawlers. ### Can I list ten projects for under $10? Yes: ten $1 squares on Square Town, or ten free tiles on SaaSBoard, or ten posts in free venues. Our guide to doing it without annoying everyone is [How to promote 10+ side projects at once](/blog/how-to-promote-10-side-projects-at-once). ### Why does the favicon matter so much? Because every venue above displays your link with a favicon next to it. No favicon reads as abandoned. On Square Town, a site with no favicon gets a clown emoji and a place in the Hall of Clowns until it adds one. --- # How to promote 10+ side projects at once without going broke URL: https://square.pov.town/blog/how-to-promote-10-side-projects-at-once Description: A plan for developers with many side projects: one hub page, consistent favicons, $1 squares as a visual index, batched launches, one changelog, a $20 budget. Last updated: 2026-08-18 To promote ten or more side projects at once, stop promoting them one at a time. Build one hub page that lists them all, give every project a real favicon and one-line description, put one $1 square per project on a shared wall so they exist as a visible set, cross-link them, batch launches into a monthly rhythm and publish one changelog feed for the lot. Total outlay in the plan below: about $20, and most of that is optional. This is written for the person who owns twelve domains, has shipped seven things that work and four that mostly work, and cannot justify a marketing budget for any single one. The trick is to treat the collection as the product. Individually your projects are small; together they are a portfolio, and portfolios are interesting. ## The plan at a glance | Step | What you do | Cost | Time | |---|---|---|---| | 1 | One hub page listing every project | $0 (your existing domain) | An evening | | 2 | A real favicon on every project | $0 | 15 minutes per project | | 3 | One $1 square per project on Square Town as a visual index | $1 × projects | 2 minutes per project | | 4 | Cross-link every project to the hub and to one sibling | $0 | An hour | | 5 | One changelog / "now" feed for everything | $0 | Ongoing, 10 minutes a week | | 6 | Batch launches: one project per month, everywhere at once | $0 | Half a day per month | | 7 | Free directory and wall listings for the whole set | $0 | An hour | | 8 | Optional: analytics and one paid listing per project you care about | $5–$10 per project | Minutes | ## Step 1: build one hub page Everything starts here. A single page — `yourname.dev/projects`, or the front page of your personal site — that lists every project with its favicon, name, one line of what it does, status (live, beta, archived) and a link. Sort by "most alive" not by date. Ten projects on one page is a story ("this person ships"); ten unrelated domains are noise. Rules that make hub pages work: every entry has the same shape; abandoned projects are marked abandoned rather than hidden (honesty reads as competence); and each line links to the project, not to a GitHub README about it. Ideas for the format are in [side project portfolio ideas](/blog/side-project-portfolio-ideas). ## Step 2: give every project a real favicon This is the cheapest branding you will ever do and most side projects skip it. Every place your links appear — browser tabs, bookmarks, chat previews, directories, walls, your own hub page — shows a small icon next to them. Ten projects with ten distinct favicons look like a product family; ten projects with the default framework icon look like tutorials. Make them consistent: same corner radius, same palette family, one letter or glyph each. They need to read at 16 pixels, so no words. If a project genuinely has no icon, generate one from its initial. Instructions in [how to add a favicon](/blog/how-to-add-a-favicon) and [favicon design tips for 16 px](/blog/favicon-design-tips-16px). Consequences of skipping this step include the Hall of Clowns in step 3. ## Step 3: put one $1 square per project on Square Town Square Town ([square.pov.town](/)) is a favicon wall: paste a URL, it fetches the favicon, you click an empty cell, pay $1 by card, done — no account, no upload, no copy to write. Ten projects is ten dollars and about twenty minutes. Buy them adjacent so they form a visible cluster: a row or a block of your favicons is a tiny billboard for the whole portfolio, and clicking any of them shows the site's card with its link. Why this step is in the plan and not just a nice-to-have: it is the only place on this list where your projects exist as a *set*, next to each other, in public, for a dollar each. The wall is live (every buy, eviction and kiss is pushed to everyone watching), each square gets its own deed URL with view, click and kiss counts, and tilting into 3D turns each favicon into a tower whose height is its click count — so the projects people actually use stand taller than the ones they don't. That is a free, honest, public analytics view of your portfolio. Be clear about what it isn't. It is not an SEO play (clicks are counted redirects), it does not send meaningful traffic on its own, and any square can be evicted by someone paying double what you paid — so a $1 square costs $2 to take. Icons nobody kisses for 90 days fade to grayscale until someone kisses them, which anyone can do for free; a portfolio owner kissing their own row once a quarter is fine. Full rules on [pricing](/pricing); the audience page for you specifically is [Square Town for developers with many side projects](/for/developers-with-many-side-projects). ## Step 4: cross-link everything Every project's footer gets two links: "more by [you]" pointing at the hub, and one sibling project that makes sense next to it ("if you like this, try …"). That's it. Don't build a ring of twelve links in every footer — it looks like a link farm and helps nobody. The hub-plus-one pattern gives each visitor a way out into the rest of your work without turning your footer into a directory. ## Step 5: one changelog feed for the whole set You cannot sustain ten blogs. You can sustain one page — `/changelog` or `/now` on the hub — where every entry is "project · date · one line". Shipped a fix to project four? One line. Killed project nine? One line. Give it an RSS feed. This is the single most effective thing on the list for the people who already like your work: it gives them one place to follow instead of ten, and it shows momentum across the portfolio even when any single project is quiet. ## Step 6: batch launches, one project per month You get roughly one good launch per project. Don't spend them all in a week. Pick the calendar: month one, project A goes to Show HN, r/SideProject, Indie Hackers and your Mastodon/Bluesky in the same 48 hours; month two, project B. (Those venues are described from general knowledge; check their current rules before posting.) The hub page and changelog make each launch stronger, because anyone who clicks through finds the rest. The full menu of free and cheap venues, with our honest take on each, is [17 places to promote an indie project for under $10](/blog/places-to-promote-indie-projects-under-10-dollars); a step-by-step for the day itself is the [indie hacker launch checklist](/blog/indie-hacker-launch-checklist). ## Step 7: free listings for the whole set Some directories and walls cost nothing and don't mind ten submissions if each is a real, distinct project. As of August 2026: [SaaSBoard](https://saasboard.app) gives a free 1×1 logo tile per product; [WebTiles](https://webtiles.kicya.net/) gives a free hand-coded tile on a shared grid; [StartupBar](https://startupbar.co/) is a free favicon webring bar you embed on your own sites, which suits a portfolio unusually well; [Milliboard](https://www.milliboard.com) accepts any amount for a place on its leaderboard. Open-source projects should also have GitHub topics set and be on relevant awesome-lists (general knowledge). Do this in one sitting for all ten; the marginal project takes five minutes. ## Step 8: spend a little where it counts Once the free scaffolding is up, small paid extras make sense for the two or three projects you actually care about. On Square Town, $5 one-time unlocks per-day view and click charts on a deed, which is a cheap way to learn which project people click. Elsewhere, as of August 2026, The Logo Wall is $5 one-time for a logo plus a profile page, and [Link for a Dollar](https://linkforadollar.com/) is $1 per permanent square. Don't buy these for all ten; buy them for the ones with traction. ## The worked budget Ten projects, everything in the plan, as of August 2026: | Item | Unit | Qty | Cost | |---|---|---|---| | Hub page on a domain you already own | — | 1 | $0 | | Favicons (you make them) | — | 10 | $0 | | Square Town, one square per project | $1 | 10 | $10 | | Cross-links, changelog feed | — | — | $0 | | Free venue posts (Show HN, Reddit, Indie Hackers, PH, Dev.to, social) | — | 10 launches over 10 months | $0 | | Free walls and directories (SaaSBoard tile, WebTiles, StartupBar, GitHub topics) | — | 10 | $0 | | Square Town per-day analytics, top 2 projects only | $5 | 2 | $10 | | **Total** | | | **$20** | | Optional: The Logo Wall listing for the flagship | $5 | 1 | +$5 | | Optional: defend a square if evicted | 2× last price | as needed | +$2 per eviction | Twenty dollars for a full year of promoting ten projects. Half of it is optional analytics. If a square gets evicted and you want it back, the price is double what the evictor paid — $2 for a square you paid $1 for — and every eviction doubles it again, so decide in advance which squares are worth a bidding war. Most aren't. The Throne is not for you; it starts at $100 and doubles every eviction, and its whole point is that someone else will want it more. ## What to expect None of this produces a spike. Spikes come from launches, and step 6 spaces those out deliberately. What the plan produces is a portfolio that looks maintained from every angle — hub, footers, changelog, favicons, a row of squares on a public wall — so that when a launch does land, the visitor who clicks around finds nine other things worth trying and one feed to follow. That is the compounding part. Numbers depend on your projects; we won't invent any. ## FAQ ### How much does it cost to list ten side projects on Square Town? $10 as of August 2026: one $1 square per project, one-time, no subscription. Buying them adjacent makes a visible cluster. Per-day analytics is an optional $5 per deed. ### Should every project get its own launch? Yes, but spaced out — roughly one per month, hitting the free venues within the same 48 hours. Launching ten things in one week burns your audience and your goodwill with the venues. ### Do I need a separate domain for each project? No. A hub with subpaths works fine and keeps the cross-linking simple. If projects already have their own domains, keep them and point their footers at the hub. ### What if I don't have time to make ten favicons? Make one template (shape, radius, palette) and change a letter. A consistent family of simple icons beats ten unrelated logos. A project with no favicon looks abandoned everywhere its link appears — and on Square Town it sits in the Hall of Clowns until fixed. ### Will a $1 square send traffic to my projects? Not meaningfully, and nobody should promise otherwise. It buys presence in a place other makers browse, a public click count per project and a visual index of your work. Traffic comes from launches and from the work itself. ### What happens if someone evicts one of my squares? They paid double what you paid; your site is announced as evicted in the live feed; the next evictor would pay double their price. You can rebuy the same spot at that price or take another empty cell for $1. Decide beforehand which squares are worth defending. --- # The Million Dollar Homepage, 21 years later: what survived and what didn't URL: https://square.pov.town/blog/million-dollar-homepage-21-years-later Description: The Million Dollar Homepage sold out in 2006 for $1.04M. In 2026 it's frozen with ~40% dead links, its clones mostly parked, and a new wave of $1 walls. Last updated: 2026-08-18 The Million Dollar Homepage launched in 2005, sold 1,000,000 pixels at $1 each in 10×10 blocks, and sold out in five months for $1.04 million. Twenty-one years later, as of August 2026, the page is still online but frozen; roughly 40 % of its links are dead; almost every clone from 2005–07 is parked; the 2016–22 crypto versions are mostly gone; and 2026 has produced a new wave of $1-a-square walls, of which Square Town ([square.pov.town](/)) is the one that changed the mechanics rather than the currency. This is the long view: what the original was, what has survived from its era, what didn't, and why the walls of 2026 look the way they do. Every competitor fact here is from our August 2026 landscape snapshot of 434 pixel walls, logo boards and pay-to-rank lists (221 active, 160 dead, the rest dormant or sold out). ## Timeline at a glance | Year | What happened | Status in Aug 2026 | |---|---|---| | 2001 | PixelAds on whatsmyip.org sells $1 pixels in $100 blocks — before the famous one | Active, ~633 blocks sold | | 2005 | The Million Dollar Homepage: $1/pixel, $100 minimum, sold out in 5 months ($1.04M); last 1,000 px auctioned for $38,100 | Sold out, frozen archive, ~40 % dead links | | 2005–07 | Roughly 80 national and currency clones (Euro, Kronor, Rupee, Yen, Zloty, Real…) | Almost all parked or dead | | 2006 | Pixelotto — Alex Tew's own sequel: $2/pixel, clicks entered a $1M lottery ($153k paid) | Dead | | 2016–18 | First on-chain versions: PixelMap (2016), The Thousand Ether Homepage (2017, sold out), Ethereum Pixels (2017), King of the Ether Throne (2016) | Sold-out or dead | | 2021–22 | NFT tile boom: Million Token Website, CryptoPixels, BSCPixels, Solpixels, PixelProperty and dozens more | Overwhelmingly dead | | 2023–25 | Fiat clones return: 3MPixel, TileWorld, InternetTiles, The Logo Wall, Link for a Dollar, MDH 20th-anniversary clones | Mixed; several 20th-anniversary sites already dead | | 2026 | The $1-square wave: Million Squares Project, Own the Void, Project Pixel, myPixelit, The Forever Wall, Word Monument, DollarInternet — and Square Town | Active | ## What the Million Dollar Homepage was A 1000×1000 grid of pixels sold at $1 each, in 10×10 blocks, each block carrying an image, a link and a tooltip. It was made by Alex Tew, a student at the time (general knowledge; the rest of these figures are from our snapshot). It sold out in five months for $1.04 million, with the final 1,000 pixels auctioned for $38,100. Then it stopped. That was the design: a finite thing that fills up and becomes a record. Two properties of that design explain everything that followed. First, the wall was a *sell-out*: value came from scarcity and the story of filling it, so once full there was no reason to return. Second, the *link* was the product: buyers paid for a permanent outbound link on a page millions were looking at, and the images were mostly ads. Both properties look different from 2026. ## What survived **The page.** milliondollarhomepage.com is still served, as a frozen archive. That alone is unusual for a 2005 web project, and it's why the site is still the mental model for the whole genre — see our [glossary entry](/glossary/million-dollar-homepage) and [Square Town vs the Million Dollar Homepage](/vs/million-dollar-homepage). **A few old-timers still taking money.** [PixelAds on whatsmyip.org](https://pixels.whatsmyip.org) — which dates from 2001, four years before the famous one — still sells $1 pixels in $100 blocks, "forever", with about 633 blocks sold as of August 2026. [MillionDollarPage.biz](https://www.milliondollarpage.biz), a PHP re-implementation from around 2005, is up with about 20,200 pixels sold. Hungary's [Pixelháború](http://pixelhaboru.hu) (2005) is still online with a 10-year lease model. Poland's [Milion PiXeli](http://milionpixeli.pl) (2006) relaunched in 2026 as a "time capsule" at 1 zł per pixel. Trickles, but real: there has always been a small, steady demand for a permanent cheap spot on a public page. **The idea.** "Buy a spot on a shared page, link out" turns out to be durable in a way none of the individual sites were. It has been rebuilt on Ethereum, Bitcoin Lightning, Solana, Telegram, real-world maps, 3D globes, virtual skyscrapers, calendars and browser tabs. The genre never died; the sites did. ## What didn't survive **Tew's own sequel.** Pixelotto (2006) sold pixels at $2 and entered clickers into a $1 million lottery, paying out $153,000. It's dead. It was the first attempt to add a "reason to come back" to the grid, and it chose a lottery. **The 2005–07 clones.** Our snapshot lists roughly 80 national and currency clones from those years — Million Euro, Million Kronor, Million Rupee, Million Yen, Million Zloty, Million Real, Million Ringgit, Million Shekel and on — and almost every one is parked or gone. Some sold meaningful volume at the time (The Million Kronor Homepage 155,400 pixels; ChinaPixAd 142,600; China's 1baiwan.com ¥414,700 by January 2008); none built anything that outlived the novelty. The full list is in [the big list of clones](/blog/million-dollar-homepage-clones-list). **Most of the crypto era.** The Thousand Ether Homepage (2017) actually sold out and survives NFT-wrapped; PixelMap (2016) sold out and trades on secondary. Nearly everything else on-chain from 2017–22 — Ethereum Pixels, The Million Ether Homepage, Million Token Website, CryptoPixels, BSCPixels, Solpixels, XtotheX, Polypixels, BitPixels, Cell Land — is dead or dormant, with remnants on OpenSea. Wallet-gated buying sold to speculators, not to site owners, and speculators leave. **Most of the recent clones too.** The graveyard pattern in our snapshot is blunt: clones that copy the grid but give no reason to return die within about a year. From 2023–26 alone: Sickrate, GravyGrid, 10000resumes, Influencers Wall, Ownyourpixel, Pixwop, The One Dollar Pixels, the Million Dollar Homepage 20th Anniversary clone, milliondollarllm, PixelMBA, buyapixel.co, 9Mpixels, Frontier, The Agent Billboard, 1MDP.me, the Million Dollar Solana Homepage — and dozens of NFT walls. Why is examined in [why pixel-wall clones die](/blog/pixel-wall-graveyard-why-clones-die). ## The dead-links problem Roughly 40 % of the links on the original are dead as of August 2026. That isn't a failure of the site; it's what happens to any list of URLs over two decades. But it exposes the flaw in "permanent": a permanent ad for a business that no longer exists is a permanent broken link, and a wall of them is a graveyard. Every "forever" clone since has inherited the same problem, and the older survivors tend to show it. The 2026 walls have mostly ignored this. Square Town's answer is decay: an icon nobody has kissed for 90 days fades to grayscale until someone — anyone, free — kisses it, and because the icon is fetched from the live site rather than uploaded, a dead site tends to show a dead favicon. It doesn't remove dead links, but it makes them visible. More on that in [the dead-links problem of pixel ads](/blog/dead-links-problem-of-pixel-ads). ## The 2026 wave of $1 walls Something changed in 2025–26: the $1 price point came back, without minimum blocks, paid by card. As of August 2026 our snapshot counts a cluster of active $1-a-unit walls launched in the last two years: - [The Forever Wall](https://theforeverwall.com) — $1 = 1 pixel, forever; upload an image. - [Million Squares Project](https://millionsquaresproject.com) — $1 per square on a 1000×1000 grid via Stripe; 17 of 1,000,000 sold; tied to a memecoin. - [Link for a Dollar](https://linkforadollar.com/) (2025) — $1 per square, permanent, category browse; 5 of 1,000,000 claimed. - [Own the Void](https://ownthevoid.com) — $1 per cell on a trillion-cell infinite grid; text plus link. - [Project Pixel](https://projectpixel.art) — $1 per pixel, no account, live leaderboard; ~310 sold. - [myPixelit](https://mypixelit.com) — $1 per pixel, real-time canvas; 56 of 1,000,000 sold. - [Word Monument](https://wordmonument.com) — $1 per letter on a million-cell text wall. - [DollarInternet](https://dollarinternet.net) — $1 per 120-character slot, rotating billboard. Note the sales figures. The "$1 forever" price point is now crowded, and most of these walls are close to empty. Copying the original's price and permanence isn't enough in 2026 any more than copying its grid was in 2006. What our snapshot's read-across concludes is that the price is table stakes and the *game loop* is the differentiator. ## What Square Town changes Square Town (square.pov.town) launched in August 2026 with the same $1 unit and a different set of rules. Where the original sold pixels you had to design an image for, Square Town sells one 1×1 square per website and fetches the favicon from the URL — no upload, no account. Where the original was a sell-out that then froze, Square Town is a game that keeps moving: - **Evictions:** anyone can take any square by paying double what its owner paid; the evicted site is announced in the live feed, and the next evictor pays double again. - **The Throne:** the 4×4 centre is one gold tile with a crown, intro price $100, doubling every eviction ($100 → $200 → $400 → …). The ring of cells around it can't be built on. This borrows from a lineage the original never had — King of the Ether Throne (2016, +33 % per claim), Milliboard's pay-to-rank, The Pixel Orbit's pay-to-hold-centre. - **Decay:** 90 days without a kiss and the icon fades; anyone can kiss any icon free. Nobody else in our snapshot has "anyone can keep anyone's icon alive". - **Ring unlocking:** only the central 16×16 is live at launch; each time the live area is 70 % full it grows by 8 cells in every direction, up to 1024×1024 = 1,048,576 squares. The locked area is never shown, so the wall never looks empty — the failure mode of nearly every wall in the list above. - **Live and 3D:** every buy, eviction, kiss and unlock is pushed over WebSockets to everyone watching; tilt the wall and each favicon is a tower whose height is its click count. - **"Forever" that can be believed:** it runs on Cloudflare's free tier, so there's no hosting bill to lapse — the usual way clones die. None of that is a claim to the original's traffic or its million dollars. Square Town is young, small, and can't promise visitor numbers; a $1 square is presence among other makers, and it can be taken from you for $2. What it does show, twenty-one years on, is that the interesting part of the Million Dollar Homepage was never the pixels. It was that a million strangers agreed a spot on one shared page was worth having — and a wall that stays worth looking at is the part everyone forgot to build. See [why favicons beat pixels](/blog/why-favicons-beat-pixels) and the [pricing page](/pricing) for the rules in full. ## FAQ ### Is the Million Dollar Homepage still online in 2026? Yes, as a frozen archive. It sold out in 2006 and nothing on it has been for sale since. Roughly 40 % of its links were dead as of August 2026. ### How much did the Million Dollar Homepage make? $1.04 million: 1,000,000 pixels at $1 each in 10×10 blocks, sold out in five months, with the last 1,000 pixels auctioned for $38,100. ### What happened to the clones? Almost all of the roughly 80 national clones from 2005–07 are parked or dead. The 2017–22 crypto and NFT versions are overwhelmingly dead, with a couple of sold-out exceptions (The Thousand Ether Homepage, PixelMap). Recent clones without a reason to return have tended to die within about a year. ### Which old pixel sites are still selling in 2026? PixelAds on whatsmyip.org (since 2001, ~633 blocks sold), MillionDollarPage.biz (~20,200 pixels sold), Hungary's Pixelháború and Poland's relaunched Milion PiXeli, all as of August 2026. ### What is the "2026 wave" of $1 walls? A cluster of walls selling one unit for $1 by card with no minimum block: The Forever Wall, Million Squares Project, Link for a Dollar, Own the Void, Project Pixel, myPixelit, Word Monument, DollarInternet — and Square Town, which adds evictions, a Throne, decay and ring unlocking to the same price. ### Why do pixel walls end up full of dead links? Because "permanent" ads outlive the businesses that bought them, and nothing removes them. Square Town's decay rule (icons fade after 90 days without a kiss) and live favicon fetching make dead sites visible rather than hiding them. --- # Every pixel wall you can still buy a spot on, ranked (August 2026) URL: https://square.pov.town/blog/pixel-walls-ranked-2026 Description: Twenty pixel walls, favicon walls and logo grids still selling spots in August 2026, ranked by price, reason to return, fit for site owners and signs of life. Last updated: 2026-08-18 As of August 2026 there are about twenty pixel walls, favicon walls and logo grids where a site owner can actually buy a spot today, out of the 434 we checked. Ranked by our five criteria below, the top of the list is Square Town ($1 favicon square, evictions, live 3D), Milliboard (pay any amount to rank), SaaSBoard (free logo tile), The Forever Wall ($1 per pixel) and Link for a Dollar ($1 per square); the bottom is a set of empty $1-a-pixel clones that will take your money and show it to nobody. We built Square Town, so this is not a neutral list. We've stated the criteria, applied them the same way to everyone, and put facts (price, status, sales counts) inline so you can re-rank for yourself. All figures are from our 17–18 August 2026 snapshot, in which every site was fetched live. ## Ranking criteria 1. **Can you buy today?** Active, checkout works, fiat accepted. Crypto-only walls are marked and ranked lower because most site owners don't hold a wallet. 2. **Price of entry.** What the smallest real placement costs. 3. **Reason to return.** Does anything happen after you buy — evictions, bidding, decay, leaderboards, live updates? Static walls score low here; the graveyard is full of them. 4. **Fit for a site owner.** Does your placement carry a link, and is the audience people who click links (makers, indie web) rather than wallets or pixel-art fans? 5. **Signs of life.** Listings sold, activity, HN or Product Hunt traction, and whether it's likely to be there next year. Not ranked: the Million Dollar Homepage itself (sold out in 2006, nothing for sale), free art canvases with no ownership (wplace, r/place, pxls), and directories without a grid. ## The ranking at a glance | # | Wall | Price (Aug 2026) | Reason to return | Fiat? | Status | |---|---|---|---|---|---| | 1 | [Square Town](/) | $1 per 1×1 square | Evictions, Throne, 90-day decay, ring unlocks, live 3D | Yes (Stripe) | Active, launched Aug 2026 | | 2 | [Milliboard](https://www.milliboard.com) | Pay any amount | Outbid by 1¢, Daily Throne, freezes at $1,337,690 | Yes | Active | | 3 | [SaaSBoard](https://saasboard.app) | Free 1×1; $10/tile/mo or $100/tile/yr | None, but free | Yes (Stripe) | Active, ~111 listings | | 4 | [The Forever Wall](https://theforeverwall.com) | $1 = 1 pixel | None | Yes | Active | | 5 | [Link for a Dollar](https://linkforadollar.com/) | $1 per square; $4/2×2; $10/10 sq; $25/5×5 | Click leaderboard | Yes | Active, 5 of 1M claimed | | 6 | [The Pixel Orbit](https://thepixelorbit.com) | Pay-what-you-buy (5×5 = $2.50) | Highest total payer holds centre; canvas re-sorts | Yes | Active | | 7 | [Million Squares Project](https://millionsquaresproject.com) | $1 per square | Hall of Founders | Yes (Stripe) | Active, 17 of 1M sold | | 8 | [The SaaS Wall](https://www.thesaaswall.com) | $0.05/block rising to $1 | Price bands rise as it fills | Yes | Active, 123 blocks | | 9 | The Logo Wall | $5 one-time; $10 featured | Most viewed / most loved rankings | Yes | Active, ~107 logos | | 10 | [Tocka](https://tocka.rocks) | Credits; $1 free to start; +1¢ per takeover | Take over any pixel, live, leaderboard | Yes | Active | | 11 | [earth.tattoo](https://earth.tattoo) | First tile free hourly; extra $1; outbid at $1/$2/$4/$8 | Doubling outbid, repaint, leaderboard | No (crypto) | Active, HN Jul 2026 | | 12 | [Project Pixel](https://projectpixel.art) | $1/pixel, no account | Live leaderboard | Yes | Active, ~310 sold | | 13 | [myPixelit](https://mypixelit.com) | $1/pixel, min 5 | Real-time canvas, timelapse | Yes (Stripe) | Active, 56 of 1M sold | | 14 | [TabRush](https://tabrush.app) | From $1, +40 % per sale tier | "Until someone steals it" | Yes | Active | | 15 | [Own the Void](https://ownthevoid.com) | $1 per cell | None (infinite grid) | Yes (Stripe) | Active | | 16 | [InternetTiles](https://internettiles.com) | $2/tile, rising as it fills | Leaderboard | Yes | Active, 3,140 of 40,000 | | 17 | [TileWorld](https://tileworld.vercel.app) | $0.99 per tile | None | Yes | Active | | 18 | [3MPixel](https://3mpixel.com) | $0.10/pixel, min 10×10 ($10) | Resale marketplace | Yes | Active, 0 sold | | 19 | [The Million Dollar Homepage 2](https://www.themilliondollarhomepage2.com) | $1–$2/px by zone, min 10 px | None | Yes (Stripe) | Active, 0 sold | | 20 | [Million Dollar Homepage 3D](https://milliondollarhomepage3d.com) | €1/pixel, min 5×5 (€25) | None (3D view) | Yes | Active, 0 sold | ## The ranking 1. **[Square Town](/) — $1 per favicon square, and things happen.** Paste a URL, Square Town fetches the favicon, click an empty cell, pay $1 by card. Any square can be evicted for double what its owner paid; the 4×4 centre is a single Throne at a $100 intro price that doubles per eviction; icons unkissed for 90 days fade to grayscale until anyone kisses them (free); only the central 16×16 is live at launch and rings unlock at 70 % fill up to 1,048,576 squares; every event is pushed live over WebSockets; tilt into 3D and each favicon is a tower whose height is its click count. Per-square views, clicks and kisses on your deed. **Why #1 on our criteria:** the lowest-effort $1 entry with the most reasons to return, built for people with URLs. **Why you might rank it lower:** launched August 2026, so it's the youngest thing here; you can be evicted; a favicon is small; and it's not an SEO product. Rules on [pricing](/pricing). 2. **[Milliboard](https://www.milliboard.com) — pay any amount, rank by payment.** The highest single payment holds #1 until someone outbids it by a cent; Daily Throne; top-3 hall of fame; the board freezes forever at $1,337,690 in total. Not a grid — a list — but the competitive loop is the cleanest in the field and any budget gets you on. See [Square Town vs Milliboard](/vs/milliboard). 3. **[SaaSBoard](https://saasboard.app) — the free tile.** A 1×1 logo tile on a 100×100 zoomable canvas is free; bigger blocks are $10 per tile per month or $100 per tile per year via Stripe; ~111 listings. Ranked high because free and active; ranked below the top two because nothing happens after you place your logo and the upsell is a subscription. See [Square Town vs SaaSBoard](/vs/saasboard). 4. **[The Forever Wall](https://theforeverwall.com) — the faithful $1 pixel.** $1 = 1 pixel, forever, image upload, no minimum. The best "just give me the Million Dollar Homepage" option, and it's active. Static — buy once, nothing changes. See [Square Town vs The Forever Wall](/vs/the-forever-wall). 5. **[Link for a Dollar](https://linkforadollar.com/) — permanent $1 squares with categories.** $1 per square, $4 for 2×2, $10 for ten, $25 for 5×5; logo or initials plus brand name and link; click-count leaderboard; email-domain verification. Cheap and well-built; the only reason it isn't higher is that 5 of 1,000,000 squares are claimed. See [Square Town vs Link for a Dollar](/vs/link-for-a-dollar). 6. **[The Pixel Orbit](https://thepixelorbit.com) — the whole canvas orbits the biggest spender.** Pay-what-you-buy (5×5 = $2.50); the highest total payer holds the exact centre and everything else re-sorts around them by cumulative spend; leaderboard. A real reason to return, at the cost of not choosing your spot. See [Square Town vs The Pixel Orbit](/vs/the-pixel-orbit). 7. **[Million Squares Project](https://millionsquaresproject.com) — 1000×1000 squares at $1.** Stripe, drag-select, image or GIF per block, forever, Hall of Founders, tied to a $MSP memecoin. 17 of 1,000,000 sold. See [Square Town vs Million Squares Project](/vs/million-squares-project). 8. **[The SaaS Wall](https://www.thesaaswall.com) — draw a pixel logo from five cents.** 100-pixel blocks in bands from $0.05 to $1 as the wall fills; built-in pixel-art editor; SaaS-only; 123 blocks. Cheapest paid entry in the field if you'll draw. See [Square Town vs The SaaS Wall](/vs/the-saas-wall). 9. **The Logo Wall — $5 logo plus profile page.** $5 one-time ($10 featured), categories, most-viewed / most-loved rankings, and a dofollow-link pitch; ~107 logos. More directory than wall, which is why it's mid-table. See [Square Town vs The Logo Wall](/vs/the-logo-wall). 10. **[Tocka](https://tocka.rocks) — take over anyone's pixel for a cent more.** Credits, $1 free to start, each takeover raises that pixel's price by 1¢, live updates, leaderboard, 1000×1000. The takeover loop is close to Square Town's eviction; but it's painted pixels, not links, so site owners get less out of it. See [Square Town vs Tocka](/vs/tocka). 11. **[earth.tattoo](https://earth.tattoo) — pixel art on a 3D globe, outbid at doubling prices.** First tile free hourly, extra tiles $1, outbid the current owner at $1/$2/$4/$8, crypto only; repaint anytime; evicted owner emailed. Great mechanics, real place, but no links and no card payments. See [Square Town vs earth.tattoo](/vs/earth-tattoo). 12. **[Project Pixel](https://projectpixel.art) — $1 pixels, no account, live leaderboard.** ~310 of 1,000,000 pixels sold; image or pixel art plus link per block. Classic canvas with a scoreboard. 13. **[myPixelit](https://mypixelit.com) — real-time collaborative pixel canvas.** $1/pixel, min 5, Stripe; painted pixels plus URL and hover message; Socket.io live; timelapse; charity cut; 56 of 1,000,000 sold. Live like Square Town, but you paint. 14. **[TabRush](https://tabrush.app) — your site as a browser tab, until someone steals it.** Tab ads from $1, +40 % per sale tier; about eight slots; rail sponsorships $500/month. A steal-and-escalate loop on a tiny inventory. 15. **[Own the Void](https://ownthevoid.com) — $1 cells, a trillion of them.** Coloured cell, 32 characters of text, optional link, one-time via Stripe, on a 1,000,000 × 1,000,000 grid. Same price as Square Town, no scarcity, no reason to return. See [Square Town vs Own the Void](/vs/own-the-void). 16. **[InternetTiles](https://internettiles.com) — $2 tiles that get pricier as the map fills.** 200×200 "map of the internet"; uploaded art or GIF plus link; 3,140 of 40,000 claimed. One of the better-populated static walls. 17. **[TileWorld](https://tileworld.vercel.app) — $0.99 for a tile on a world map.** 100,000 tiles on a black-and-white pixel-art planet, one-off. Cheap and simple; no link emphasis, nothing moves. 18. **[3MPixel](https://3mpixel.com) — bigger, cheaper, marketplace-y, empty.** $0.10/pixel, min 10×10 ($10), 2000×1500 canvas, resale marketplace, reservations, leaderboard; 0 sold. See [Square Town vs 3MPixel](/vs/3mpixel). 19. **[The Million Dollar Homepage 2](https://www.themilliondollarhomepage2.com) — zone-priced pixels, Stripe, nobody home.** $1–$2 per pixel by zone, min 10 pixels, 10-minute reservation on click; 0 sold. 20. **[Million Dollar Homepage 3D](https://milliondollarhomepage3d.com) — the classic sell-out model in 3D.** €1/pixel, min 5×5 (€25), 1,000,000 pixels on a 3D-navigable wall; 0 sold. Nice view, no game. ## Also active, not ranked Walls that are open but crypto-only, agent-only, priced for a different buyer, or otherwise off the site-owner path, all as of August 2026: [One Million Pixels (.ai)](https://onemillionpixels.ai) ($1/pixel with a free tier, built for AI agents), [Million Sat Homepage](https://www.l402apps.com/million) (1 sat/pixel via Lightning, 162k+ pixels sold), [Satoshi's Place](https://satoshis.place) (1 sat/pixel, overpaint anyone), [Pixel Spotlight](https://www.pixelspotlight.com) (£500 per block per year), [TopWorldStartups](https://www.topworldstartups.com) ($1/pixel with a $100 minimum), [Million Grid Club](https://milliongridclub.com) ($5–$100 per 10×10 square), [PixelGrid / 1mpixelwall](https://www.1mpixelwall.com/) (prices double every purchase; 3 of 1M sold), [The Forever Canvas](https://theforevercanvas.com) (£1/pixel, infinite expanding canvas), [frontpage.sh](https://frontpage.sh) (eight squares under perpetual auction, USDC), [The City Mesh](https://thecitymesh.com/en) (hexes from €10, payment = building height), [Next Million Dollar Homepage](https://nextmilliondollarhomepage.com) ($1/pixel, $100 minimum) and [WebTiles](https://webtiles.kicya.net/) (free hand-coded tiles). The complete field, including the dead, is in [the big list of clones](/blog/million-dollar-homepage-clones-list). ## How to read this list If you want a spot that stays interesting, the top ten is where the game loops are: eviction (Square Town, Tocka, earth.tattoo, TabRush), pay-to-rank or pay-to-hold-centre (Milliboard, The Pixel Orbit), rising bands (The SaaS Wall). If you want a permanent, quiet listing, The Forever Wall, Link for a Dollar and The Logo Wall are the honest choices. If you want free, SaaSBoard. If you're looking at anything ranked 17–20, look at the sales counts first: a $1 pixel on an empty wall is a $1 pixel nobody sees. And whatever you buy, buy it for presence among people who like small internet things, not for traffic and not for SEO. Nothing on this list can promise visitors, and we don't either — see [Is buying pixels worth it in 2026?](/blog/is-buying-pixels-worth-it-2026). ## FAQ ### How many pixel walls are still active in 2026? Of 434 pixel walls, logo boards and pay-to-rank lists we checked on 17–18 August 2026, 221 were active, 160 dead and the rest dormant or sold out. About twenty are practical for a site owner to buy on today. ### What is the cheapest pixel wall? SaaSBoard's 1×1 tile is free; The SaaS Wall starts at $0.05 per block; Tocka gives $1 of credits to start. Among $1 walls: Square Town, The Forever Wall, Link for a Dollar, Million Squares Project, Project Pixel, Own the Void, as of August 2026. ### Which pixel walls have a game loop? Square Town (evict for double, Throne, 90-day decay, ring unlocks), Milliboard (outbid by 1¢), The Pixel Orbit (highest total payer holds the centre), Tocka (+1¢ takeovers), earth.tattoo (doubling outbid), TabRush (steal, +40 % per tier). ### Why isn't the Million Dollar Homepage on the list? It sold out in 2006 and is a frozen archive; you cannot buy a spot on it. See [Square Town vs the Million Dollar Homepage](/vs/million-dollar-homepage). ### Is Square Town really the best pixel wall? By our criteria — buy today, price, reason to return, fit for site owners, signs of life — yes, and we made it, so weigh that. Its weaknesses are real: launched August 2026, evictable for double, 16-pixel icons, no traffic promises. ### Do any of these walls help SEO? Some (The Logo Wall, The Startup Board) advertise dofollow links. Square Town does not; clicks are counted redirects. Buy walls for visibility to a niche, not for rankings. --- # The big list of Million Dollar Homepage clones (2005–2026) URL: https://square.pov.town/blog/million-dollar-homepage-clones-list Description: A reference list of Million Dollar Homepage clones, 2005–2026, grouped by era: the 2005–07 wave, NFT years, fiat revival, agent grids, pay-to-rank, with status. Last updated: 2026-08-18 The Million Dollar Homepage (2005) has been cloned in every currency, on most blockchains, for AI agents, on maps, globes and skyscrapers, and as ranked lists. This page is the reference list: one line per clone, grouped by era and type, with price and status as of our 17–18 August 2026 snapshot of 434 walls, in which 221 were active, 160 dead and the rest dormant or sold out. Anything marked **dead** or **dormant** was unreachable, parked or inactive when we checked. It is not every clone that ever existed, but it is every one we could still verify. For the ones worth buying on, see [every pixel wall ranked](/blog/pixel-walls-ranked-2026); for the story, see [21 years later](/blog/million-dollar-homepage-21-years-later). Square Town (square.pov.town) is listed in its era like everything else. ## By the numbers | Era / type | Entries below | Mostly | |---|---|---| | The original and its immediate era (2001–08) | 24 | Dead or parked; a few still selling | | The crypto and NFT years (2016–26) | 38 | Dead, dormant or sold out | | The fiat revival (2023–26) | 37 | Active, mostly near-empty | | Agent-oriented grids (2025–26) | 12 | Active but tiny, several dead | | Pay-to-rank, throne and single-slot cousins | 14 | Active | ## The original and the 2005–08 wave - [The Million Dollar Homepage](https://milliondollarhomepage.com) (2005) — $1/pixel in 10×10 blocks, sold out in 5 months for $1.04M; frozen archive, ~40 % dead links. - [PixelAds, whatsmyip.org](https://pixels.whatsmyip.org) (2001) — $1/pixel, $100 per block, "forever"; still active, ~633 blocks sold — and older than the original. - Pixelotto (2006) — Alex Tew's own sequel, $2/pixel with a $1M click lottery ($153k paid); **dead**. - [The Million Euro Homepage](https://millioneurohomepage.com) (2005) — €1/pixel; **dead**, parked. - [MillionDollarPage.biz](https://www.milliondollarpage.biz) (~2005) — $1/pixel PHP clone; active, ~20,200 pixels sold. - [Pixelháború](http://pixelhaboru.hu) (2005, Hungary) — 10 Ft/pixel for 10 years, 42,200 sold by 2006; still online. - [Mijn Banner](http://mijnbanner.nl) (2005, Netherlands) — €0.20/pixel, min €20, charity; dormant, buy page gone. - 1 Appel – 100 Pixels (2005, Belgium) — one premium phone call = 100 pixels; **dead**. - Plansza.pl (2005, Poland) — 0.3 cents/pixel, 48,700 sold; **dead**. - [Milion PiXeli](http://milionpixeli.pl) (2006, Poland) — 1 zł/pixel; relaunched 2026 as a "time capsule", active. - The Million Kronor Homepage (2006, Sweden) — 155,400 pixels sold, sold its script; **dead**. - ChinaPixAd (2006) — $1/pixel, 142,600 sold; **dead**. - 1baiwan.com 百万首页 (2005, China) — ¥100/grid, ¥414,700 sold by January 2008; **dead**. - [Die Eine Million Euro Seite](http://die-eine-million-euro-seite.de) (2006, Germany) — €0.25/pixel; **dead**, parked. - Million Pixels – Internet Genesis Project (2006, Germany) — €0.50/pixel for 30 years; **dead**. - La Web del Millón (2006, Spain) — per-block, called the most successful Spanish clone; **dead**. - Quebec Pixel (2006, Canada) — $1/pixel, 7,400 sold; **dead**. - [Milyon Dolarlık Anasayfa](http://milyondolarlikanasayfa.com) (~2006, Turkey) — dormant shell. - Million Zimbabwean Dollar Homepage (2008) — hyperinflation parody; **dead**. - Plus roughly sixty more national clones from 2005–07 in French, Dutch, Italian, Spanish, Portuguese, Russian, Japanese, Korean, Malay, Thai, Hebrew and Arabic — almost all **dead** or parked. Later fiat stragglers: [Ten Thousand Dollar Homepage](https://www.tenthousanddollarhomepage.com) (2015, $1/pixel, 10,000 pixels, sold out/dormant); [The Million Dollar App](http://www.milliondollarapp.com) (2018, in-app pixels, dormant); [Million Pixel Design](https://millionpixeldesign.com) (2022, $1/pixel, dormant); Millions Dollar AI Homepage (2023, AI-art clone, **dead**). ## The crypto and NFT years (2016–23) - [PixelMap](https://pixelmap.io) (2016) — 2 ETH/tile, 3,970 tiles, first on-chain-image NFT; sold out, secondary only. - [King of the Ether Throne](https://www.kingoftheether.com/thrones/kingoftheether/index.html) (2016) — pay-more-to-be-king, +33 % per claim; **dead** (the ancestor of every throne mechanic since). - [The Thousand Ether Homepage](https://thousandetherhomepage.com) (2017) — 0.001 ETH/pixel, 10×10 min; sold out, NFT-wrapped, still live. - Ethereum Pixels (2017) — any pixel buyable at current price, auto-incrementing, previous owner paid out; **dead**. - Million Dollar Bitcoin Homepage (2017) — 0.001 BTC/pixel; **dead**. - CryptoBragging (2017) — ETH king-of-the-hill billboard; **dead**. - [The Million Ether Homepage](https://themillionetherhomepage.com) (2018) — ERC-721 blocks; dormant, "relaunching soon". - [Satoshi's Place](https://satoshis.place) (2018) — 1 sat/pixel via Lightning, overpaint anyone forever; active. - [Pixel Master](https://pixelmaster.io/) (2018, EOS) — overpaint pays 1.35× to prior owner, jackpot; **dead**. - PixelProperty (2018) — 10,000 properties in ETH/PXL; **dead**. - PixelPirate (2019) — "stole" the original's pixels as NFTs; **dead**. - Million Token Website (2021) — 5×5 plots as Ethereum NFTs; **dead**, NFTs persist. - CryptoPixels (2021) — $1/pixel as 10×10 NFT blocks; **dead**. - BSCPixels (2021) — 0.05→0.25 BNB per block, 76 of 5,000 claimed; **dead**. - Solpixels (2021) — Solana 16×16 tile NFTs; **dead**. - XtotheX (2021) — 577 X-Blocks; **dead**. - [Polypixels](https://polypixels.io) (2021) — 3,339 polypixels via Google Form; **dead**. - BitPixels (2021) — 10,000 rentable pixel NFTs on Avalanche; **dead**. - Cell Land (2021) — 14,400 cells with CLD token; **dead**. - Million Solana Pixels (2021) — 0.002 SOL/pixel, manual placement; **dead**. - [Wall of Vame](https://wallofvame.io) (2021) — PixelMap fork on VeChain, 3,969 tiles; active. - [Million Pixel XRP Wall](https://www.millionpixelxrp.com/) (2021) — 10 XRP per 10×10 block; active. - [The Modern Billboard Collective](https://themodernbillboard.com) (2021) — 48 NFT lots across partner sites; dormant. - [ThetaMillion](https://www.thetamillion.com/) (2022) — 1 TFUEL/pixel in 20×20 packs, 571 spots sold out in 4 days. - The Space (2022) — Harberger-taxed pixel NFTs; **dead**. - [Tiles On Chain](https://www.tilesonchain.com) (2023) — 508 Polygon tiles each spawning sub-tiles; active, low activity. - [Stealcam](https://stealcam.com/) (2023) — steal-to-reveal images at +10 % per steal on Arbitrum; **dead**. Later crypto: [Billion Dollar Site](https://billiondollarsite.com) (2024, 0.0025 ETH/pixel NFT, active); [One Million Pixels (Solana)](https://1millionpixels.xyz) (2024, $1/pixel USDC, 0 sold); [Million Dollar Memecoins](https://milliondollarmemecoins.com) (2024, $1/pixel via wallets, activity unclear); [TonMap](https://tonmap.app/) (2024, Telegram land map, active); The Million Dollar Solana Homepage (2024, **dead**); 1MDP.me (2024, **dead**); Pixelwalls (2024, **dead**); [1MillionWeb3](https://www.1millionweb3.com/) (2025, ~197 blocks sold, active); [Million Solana Homepage](https://www.millionsolanahomepage.fun) (2025, burn 10 $PIXEL per pixel, active); [Twenty One Bitcoin Homepage](https://twentyonebitcoinhomepage.com) (2026, satoshi-priced pixels, active); [DotLand](https://www.dotland.io) (2026, $12 per 10×10 Solana NFT with jackpot, active). ## The fiat revival (2023–26) Card payments, $1 units, Stripe checkouts — and, mostly, empty grids. - [Square Town](/) (2026) — $1 per 1×1 favicon square, evict for double, Throne from $100, 90-day decay unless kissed, rings unlock at 70 %, live, 3D; active, launched August 2026. Not a pixel clone strictly — favicons, not pixels — but it belongs in this era. - [The Forever Wall](https://theforeverwall.com) (2026) — $1 = 1 pixel, forever; active. - [Million Squares Project](https://millionsquaresproject.com) (2026) — $1/square, Stripe, memecoin-linked; 17 of 1M sold. - [Link for a Dollar](https://linkforadollar.com/) (2025) — $1/square, permanent, categories; 5 of 1M claimed. - [Own the Void](https://ownthevoid.com) (2026) — $1 per cell on a trillion-cell grid; active. - [Project Pixel](https://projectpixel.art) (2026) — $1/pixel, no account, leaderboard; ~310 sold. - [myPixelit](https://mypixelit.com) (2026) — $1/pixel, min 5, real-time; 56 of 1M sold. - [The Million Dollar Homepage 2](https://www.themilliondollarhomepage2.com) (2025) — $1–$2/px by zone, min 10; 0 sold. - [Million Dollar Homepage 3D](https://milliondollarhomepage3d.com) (2026) — €1/pixel, min 5×5, 3D wall; 0 sold. - [Next Million Dollar Homepage](https://nextmilliondollarhomepage.com) (2026) — $1/pixel, $100 minimum; early. - [3MPixel](https://3mpixel.com) (2025) — $0.10/pixel, min $10, resale marketplace; 0 sold. - [TileWorld](https://tileworld.vercel.app) (2025) — $0.99/tile on a pixel-art world map; active. - [InternetTiles](https://internettiles.com) (2025) — $2/tile rising, 3,140 of 40,000 claimed. - [Million Grid Club](https://milliongridclub.com) — $5–$100 per 10×10 square; active. - [PixelGrid, 1mpixelwall](https://www.1mpixelwall.com/) (2026) — prices double with every purchase; 3 of 1M sold. - [The Forever Canvas](https://theforevercanvas.com) (2026) — £1/pixel, infinite expanding canvas, min £25; early. - [The SaaS Wall](https://www.thesaaswall.com) (2026) — $0.05→$1 per block, hand-drawn logos; 123 blocks. - The Logo Wall (2025) — $5 logo sticker + profile page; ~107 logos. - [The Startup Board](https://thestartupboard.net) (2026) — $5/$25/$75 logo tiers, verified founders, single cohort. - [SaaSBoard](https://saasboard.app) (2026) — free 1×1 tile, $10/tile/mo bigger; ~111 listings. - [TopWorldStartups](https://www.topworldstartups.com) (2026) — $1/pixel, $100 minimum; 0 sold. - [Pixel Spotlight](https://www.pixelspotlight.com) (2026) — £500 per block per year; pre-sale. - [The Pixel Tree Project](https://pixeltreeproject.com) (2026) — $1/pixel, a tree per pixel; 0 claimed. - [CustEx Million Dollar Page](https://custex.com/ads) (2026) — $0.50→$1.50/px tiers; 191,560 px sold (~$10k). - [America Pixels](https://americapixels.com) (2026) — $1/pixel on a US map, $10 min; 0 claims. - [Million World Ad](https://www.millionworldad.com) (2026) — $1/cell on a rotating 3D globe; 0 % claimed. - [The Menara](https://themenara.com) (2026) — $5 per window on a 5,000-window tower; 12 lit. - [OneMillionPixels.eu](https://onemillionpixels.eu) (2026) — €99/year per 100 px, EU-only; 0 sold. - [The Million Bucks Homepage](https://www.millionbuckshomepage.com) (2025) — £1/pixel; early. - Million Euro Space (2025) — €10 per block, Germany-based; early. - [New Million Dollar Homepage](https://newmilliondollarpage.com) (2025) — $0.50/pixel, random placement; active. - [1BTCHomepage](https://1btchomepage.com) (2025) — USD-priced pixels, BTC or card; active. - [Buy A Pixel (Hashe)](https://buyapixel.hashe.com) (2025) — per-block; active. - [1 Milion Pikseli](http://jedenmilionpikseli.pl) (2026, Poland) — 1 zł/px; 19.4k of 100k. - [Milyonluk Piksel](http://milyonlukpiksel.com) (2025, Turkey) — 100 TL per block; active. - [1 Million Pixels, 1milllionpixels.com](https://1milllionpixels.com/) (2026) — $0.01/pixel tiers; $42 revenue. - Dead already: Million Dollar Homepage 20th Anniversary (2025), milliondollarllm (2025), PixelMBA (2023), buyapixel.co (2023, PH #4 of its day), The One Dollar Pixels (2024), [Sickrate](https://www.sickrate.com) (2024), [GravyGrid](https://gravygrid.com) (2024, pivoted), 10000resumes (2025), [Influencers Wall](https://influencerswall.com) (2025), Ownyourpixel (2025), Pixwop (2025), Million Pixel Dash (2025), Million-Dollar-Ad.com (2025), One Million Dollar Link (2024), 1000grid (2024), [BillboardGrid](https://billboardgrid.com) (2024) — all **dead**. ## Agent-oriented grids (2025–26) Walls built for AI agents to buy on, usually via x402 or an API. - [One Million Pixels (.ai)](https://onemillionpixels.ai) (2026) — $1/pixel, free tier, agent API; active. - [overwrite.place](https://overwrite.place) (2026) — one artwork holds the homepage, dethroned entries shrink; active. - [Molty Million Dollar Homepage](https://moltymilliondollarhomepage.com) (2026) — agents-only, priced in $MILLY; 0 sold. - [Molt Beach](https://moltbeach.ai) (2026) — $1/pixel via MCP; dormant, API 503. - [Times Rare](https://timesrare.com) (2026) — $75–$300 per tile, x402; beta, payments stubbed. - [Agent Grid](https://agentgrid.nanocorp.app) (2026) — $1 founding tiles, Stripe; 1 tile. - [402milly](https://402milly.xyz) (2025) — from $1 USDC per block via x402; active. - [x402pixels](https://x402pixels.com) (2026) — $1/pixel via x402; 0 claims. - [402pixels](https://402pixels.com) (2026) — $0.25/block, +$0.25 per overwrite; API live. - [X402 Dollar Homepage](https://www.x402dollarhomepage.com) (2026) — $0.01/pixel, +$0.01 per repaint; active. - AI Pixel Place (2026) — MDH for agents; down. - The Agent Billboard (2026) — $1 per minute via x402; **dead**. ## Pay-to-rank, throne and single-slot cousins Not grids, but the same instinct — pay to hold the top spot — and the branch Square Town's Throne descends from. - [Milliboard](https://www.milliboard.com) (2026) — pay any amount, highest payment holds #1, freezes at $1,337,690; active. - [The Pixel Orbit](https://thepixelorbit.com) (2026) — highest total payer holds the centre, canvas re-sorts; active. - [Space, spacefilled.com](https://www.spacefilled.com/) (2026) — one slot, +$1 per turn; active, slow. - [FlexList](https://flexlist.app) (2026) — per-city bid leaderboard; active. - [TabRush](https://tabrush.app) (2026) — ~8 tab slots, +40 % per sale, "until someone steals it"; active. - [frontpage.sh](https://frontpage.sh) (2026) — eight squares under perpetual auction, USDC; 297 transactions. - [Say That Sh**](https://saythat.sh) (2026) — single decaying text slot, outbid to replace; active. - The King of the Internet — pay $1 more than the king; **dead**. - [Pay More, Be Seen](https://xixixao.github.io/paymorebeseen/) (2023) — Stripe pay-to-rank demo; dormant. - [MinuteText](https://www.minutetext.com) (2025) — $1 per full-screen message; active. - [The One Dollar Homepage](https://www.onedollarhomepage.com/) (2024) — $1 replaces the photo; dormant. - [24HourHomepage](https://24hourhomepage.com) (2020) — own one second of the day, ~$9.78 rising; active. - [Own 1 Second](https://own1second.com) (2026) — $1 per second of 2026; 0 sold. - [Grow the Button](https://growthebutton.com) (2026) — $1 = +1 px on a giant button; ~$5.6k raised. ## What the list says Read down any section and the pattern repeats: the price is copied, the grid is copied, the sales counter stays near zero, and a year later the domain is parked. The exceptions added a reason to look again — a throne, a takeover, a leaderboard, a live feed — or were free. That is the argument of [why pixel-wall clones die](/blog/pixel-wall-graveyard-why-clones-die), and why Square Town sells favicons on a wall where squares can be evicted, icons fade if unloved, and the map grows only as it fills. Ask again in 2027; the list will be updated. ## FAQ ### How many Million Dollar Homepage clones are there? Our August 2026 snapshot verified 434 pixel walls, logo boards and pay-to-rank lists; 221 were active, 160 dead and the rest dormant or sold out. The 2005–07 wave alone produced roughly 80 national clones we could still find. ### Are any of the original 2005–07 clones still alive? A few: PixelAds on whatsmyip.org (from 2001), MillionDollarPage.biz, Hungary's Pixelháború and Poland's relaunched Milion PiXeli were online and selling as of August 2026. Nearly everything else from that wave is parked. ### Which crypto pixel walls actually sold out? The Thousand Ether Homepage (2017), PixelMap (2016) and ThetaMillion (2022). Most other 2017–22 on-chain walls are dead or dormant. ### What is the "fiat revival"? The 2023–26 return of card-paid clones at $1 or less per unit — The Forever Wall, Million Squares Project, Link for a Dollar, Own the Void, Project Pixel, myPixelit and others — most of which were close to empty as of August 2026. ### Is Square Town a Million Dollar Homepage clone? It descends from it: one shared wall, $1 a unit, link out. It differs in selling favicons rather than pixels, and in adding evictions for double, a Throne that doubles per eviction, 90-day decay unless kissed, and rings that unlock at 70 % fill. See [Square Town vs the Million Dollar Homepage](/vs/million-dollar-homepage). ### Where can I still buy pixels in 2026? See [every pixel wall you can still buy a spot on, ranked](/blog/pixel-walls-ranked-2026) — about twenty active options with prices and status. --- # How Square Town runs a live 3D pixel wall on Cloudflare's free tier URL: https://square.pov.town/blog/build-a-pixel-wall-on-cloudflare-free-tier Description: How Square Town runs a live 3D favicon wall on Cloudflare Workers, D1 and one Durable Object — WebSockets, Stripe webhooks, a favicon proxy — on the free tier. Last updated: 2026-08-18 [Square Town](/) (square.pov.town) is a live, 3D favicon wall that runs entirely on Cloudflare's free tier: a single Worker serves the static site and the API, a D1 (SQLite) database holds every square, one Durable Object called `WallHub` holds every open WebSocket and fans out events, and the browser renders the wall with a vendored copy of three.js. Stripe handles money. There is no server to keep alive, which is why "1 square = $1, forever" is a promise the hosting bill can't break. > **TL;DR** — Worker + static assets + D1 + one Durable Object + Stripe Checkout. Purchases create a `pending` row that reserves the cell for 30 minutes; the Stripe webhook flips it to `paid` and broadcasts. `/favicon/:domain` proxies Google's favicon service with a CORS header and a one-day edge cache so WebGL can use icons as textures. Free-tier headroom: 100k Worker requests/day and 5M D1 reads/day. Everything below is read from the code, not from a slide. ## The whole stack in one table | Piece | What it is | What it does on Square Town | |---|---|---| | Cloudflare Worker (`src/worker.js`) | One JavaScript file at the edge | Routes `/api/*`, `/go/:id`, `/favicon/:domain`, `/ws`; everything else falls through to static assets | | Static assets (`public/`) | Served by the Workers assets binding | `index.html` (the wall), `deed.html`, `admin.html`, `vendor/three.module.min.js` | | D1 (`faviconwall`) | Serverless SQLite | Tables `listings`, `clicks`, `events`, `meta` | | Durable Object `WallHub` | One global instance named `wall` | Accepts WebSocket upgrades on `/ws`, broadcasts every event to all sockets | | Cloudflare edge cache | `caches.default` | Caches proxied favicons for a day | | Stripe | Checkout Sessions + one webhook | Takes the $1 (or $100 for the Throne, or $5 for analytics), confirms via `checkout.session.completed` | | three.js (vendored) | WebGL in the browser | Orthographic camera; top-down = 2D wall, ctrl+drag = 3D towers ([why the wall is 3D](/blog/why-the-wall-is-3d)) | Infra names are still `faviconwall` (Worker, D1 database, npm package) because renaming them would orphan the domain, the Durable Object and the DB. The custom domain is one line in `wrangler.jsonc`. ## The database is four tables of SQLite `schema.sql` is short. `listings` is the wall: one row per square with `url`, `domain`, `x`, `y`, `w`, `h` (always 1×1 except the 4×4 Throne), a `status` that goes `pending → paid → evicted`, `price_cents` and `sq_price_cents` (the per-square price, which doubles on eviction), a `deed_token` (a random UUID that *is* ownership — no accounts), `clown` (1 = no favicon, NULL = unknown), `clicks`, `views`, `kisses`, `analytics_paid`, `evicted_by`, `watered_at` (last kiss, unix ms; the column kept its old name) and `created_at`. `clicks` is per-day analytics: `(listing_id, day)` unique, `n` clicks and `v` views. `events` is the live feed: `type`, `text`, `ts`. `meta` holds the one number that matters, `unlocked_half`: the half-width of the live area, 8 at launch (a 16×16 box), +8 per ring unlock, up to 512. Two indexes: `listings(status)` and `listings(deed_token)`. A tiny lazy migration in the Worker adds the `views`, `kisses` and `v` columns to older databases, ignoring "duplicate column" errors — SQLite has no `ADD COLUMN IF NOT EXISTS`. ## A purchase is a pending row, a Stripe session and a webhook `POST /api/buy` takes `{ url, mode, x, y, evictId }`. The Worker normalises the URL (adds `https://`, strips `www.`), reads the unlocked half-width, loads all *active* listings — paid rows plus pending rows younger than 30 minutes — and validates the block by `mode`: - **pick** (the normal case): the cell must be inside the unlocked box, not the Throne, not the Throne's aura ring, and not overlapping any active listing. Price is `BASE_CENTS` = 100. - **evict**: the target must be a paid listing; the block is the target's exact footprint; `sq_price_cents` is the target's ×2. If a pending listing already overlaps the target, you get "Someone is already evicting this square. Vultures everywhere." - **center**: the Throne, `CENTER_CENTS` = 10000, only if nothing overlaps it. It inserts a `pending` row with a fresh `deed_token`, then creates a Stripe Checkout Session over plain `fetch` to `api.stripe.com/v1/checkout/sessions` (form-encoded; no SDK) with `metadata[kind]=buy`, `metadata[listing_id]`, `metadata[evict_id]`, and a `success_url` of `/?deed=`. The browser gets `{ checkoutUrl, deed, price, block }`. The pending row is the reservation: for 30 minutes (`PENDING_TTL_MS`) it counts as occupied, so two people can't buy the same cell; abandoned checkouts simply stop counting. Nothing to clean up. `POST /api/stripe-webhook` verifies the `Stripe-Signature` header by hand: parse `t` and `v1`, reject if the timestamp is more than 300 seconds off, HMAC-SHA256 `${t}.${body}` with the webhook secret via WebCrypto, compare hex. On `checkout.session.completed` with `kind=buy` it calls `completePurchase`: set `status='paid'`, mark the victim `evicted` with `evicted_by` if there was one, log a `buy` or `evict` event (which also broadcasts), check whether the ring should unlock, and kick off the clown check in `ctx.waitUntil`. `kind=analytics` just sets `analytics_paid=1`. In `DEV_MODE` (or whenever `STRIPE_SECRET_KEY` is missing) the Worker skips Stripe and completes the purchase immediately, which is how local dev works with no keys at all. ## Ring unlocks are one integer in the `meta` table After every completed purchase, `maybeUnlockRing` sums `w*h` over paid listings, divides by the live box area `(2·half)²`, and if that's at least `UNLOCK_FILL` = 0.7 it bumps `unlocked_half` by `RING_STEP` = 8 and logs "🔓 RING UNLOCKED! The wall just grew to 32x32". At launch the box is 16×16 = 256 cells, so the first unlock lands when 180 squares are paid (the Throne counts as 16 if someone has it). The locked part of the grid is never drawn by the client, so the wall never looks empty. Details in [how it works](/how-it-works); what it means for buyers is in [how to pick a good square](/blog/how-to-pick-a-good-square). ## One Durable Object holds every WebSocket Real-time is one Durable Object class, `WallHub`, one instance addressed by `idFromName("wall")`. Its `fetch` handles two paths: - `/ws`: requires an `Upgrade: websocket` header, creates a `WebSocketPair`, calls `state.acceptWebSocket(server)` and returns 101 with the client half. That `acceptWebSocket` is the **hibernation API** — idle sockets don't keep the object (or the bill) awake. - `/broadcast` (internal, `POST`): reads the body and `ws.send()`s it to every socket in `state.getWebSockets()`, swallowing errors from dead ones, and returns the count. The Worker's `logEvent` writes the event to D1 and then calls `broadcast` — a `fetch("https://hub/broadcast")` on the DO stub, in a try/catch because real-time is best effort; the client polls `/api/state` every 30 seconds anyway. Kiss broadcasts carry the listing id and the kisser's anonymous client id so every browser plays the 💋 burst except the sender's. Click broadcasts (`{ type: "click", id, clicks }`) skip the feed but go out live, so a tower grows on every open screen when someone clicks through. The DO answers `"ping"` with `"pong"`; the client pings every 25 seconds and reconnects with backoff capped at 30 seconds. `wrangler.jsonc` declares it with `"new_sqlite_classes": ["WallHub"]` in a `v1` migration (the SQLite-backed Durable Object flavour). ## The favicon proxy exists because WebGL needs CORS Square Town never stores an image. Every icon comes from Google's favicon service (`https://www.google.com/s2/favicons?domain=…&sz=…`), which is free, cached and reliable. But three.js loads icons as textures, and WebGL refuses cross-origin images without an `Access-Control-Allow-Origin` header, which Google's service doesn't send. So the Worker exposes `GET /favicon/:domain?sz=128` (size clamped to 16–256): check `caches.default`; on a miss, fetch upstream with `redirect: "follow"`, re-wrap the body with `access-control-allow-origin: *` and `cache-control: public, max-age=86400`, and `ctx.waitUntil(cache.put(...))` if upstream was OK. The wall loads icons at 128 px through this route; the card that opens when you click a square uses Google's URL directly at 64 px, since an `` doesn't need CORS. The same service is the clown detector: it answers 404 (via its gstatic `faviconV2` redirect) for domains with no favicon and 200 otherwise. `checkClown` treats 404 as clown, 200 as fine, anything else as "transient, leave unknown". ## Clicks are a 302 with a side effect `GET /go/:id` looks up the paid listing, appends `utm_source=square.pov.town&utm_medium=referral&utm_campaign=square` (unless the destination already sets them), returns a 302, and in `ctx.waitUntil` increments `listings.clicks`, upserts today's row in `clicks`, and broadcasts the new count. Views (`POST /api/view/:id`) do the same with the `v` column, sent once per square per browser session. Neither is a backlink — it's a redirect and a counter. ## Free-tier headroom, and why that makes "forever" credible The relevant limits, as documented in the repo: **100,000 Worker requests per day** and **5 million D1 reads per day** on the free plan. Everything Square Town does is a handful of D1 statements per request, favicons are served from the edge cache after the first hit, and WebSockets on the hibernation API cost nothing while idle. That is the real answer to "how can you promise forever for $1?" A wall dies when the operator stops paying for it. Square Town's monthly cost at launch scale is zero, the code is one file plus one HTML page, and there's a `wrangler deploy` between any laptop and a running copy. It's forever* because nothing needs renewing; the asterisk is evictions, not hosting. (Context: [the launch post](/blog/square-launch).) ## What's deliberately not there Honesty, since this is the engineering post. No rate limiting on kisses or clown rechecks — Cloudflare rate-limiting rules are the plan if it gets trolled. Two people whose checkouts for the same cell *both* complete would both be marked paid; the 30-minute reservation blocks the normal path, and at launch scale that's fine. Deeds are bearer tokens: no login, no reset. And three.js is vendored at `public/vendor/three.module.min.js`, so the page's only third-party runtime dependency is Google's favicon service. If you want the wall's data, `GET /api/state` returns all of it as JSON — grid size, unlocked half, sold count, revenue, every paid listing with `domain/x/y/clicks/views/kisses`, pending footprints, the last 20 events, the clowns. That's the whole [public API](/api). ## FAQ ### What is Square Town built on? Cloudflare Workers (one Worker with static assets), D1 (SQLite) for storage, one Durable Object (`WallHub`) for WebSockets, Stripe Checkout for payments, and three.js in the browser for the 2D/3D wall. It runs on Cloudflare's free tier. ### How does Square Town keep two people from buying the same square? A purchase inserts a `pending` row before Stripe Checkout opens; pending rows younger than 30 minutes count as occupied. The Stripe webhook flips the row to `paid`; abandoned checkouts simply age out. ### How are live updates delivered? A single Durable Object holds every open WebSocket via the hibernation API. Every server event (buy, evict, kiss, unlock, clown, click) is written to D1 and then broadcast to all sockets. Browsers also poll `/api/state` every 30 seconds as a fallback. ### Why does Square Town proxy favicons instead of loading them from Google directly? WebGL textures require CORS headers, which Google's favicon service doesn't send. `/favicon/:domain` re-serves the icon with `Access-Control-Allow-Origin: *` and caches it at the edge for a day. ### What are the free-tier limits Square Town lives under? As documented in the repo: 100,000 Worker requests per day and 5 million D1 reads per day. Static assets and edge-cached favicons don't burn those budgets on repeat views. ### Does Square Town store logo images? No. It stores a URL and a domain per square. Icons are fetched from Google's favicon service on demand and cached at the edge; the 3D tower colour is sampled client-side from that icon. --- # The dead-link problem: why every pixel wall rots (and how kissing fixes it) URL: https://square.pov.town/blog/dead-links-problem-of-pixel-ads Description: About 40 % of the Million Dollar Homepage's links are dead. Why every pixel wall rots, and how Square Town's 90-day kiss decay, evictions and Hall of Clowns fix it. Last updated: 2026-08-18 Every pixel wall rots because it sells permanent space to websites that are not permanent. Sites die, domains lapse, nobody prunes, and after a few years a good share of the wall links to nothing. [Square Town](/) (square.pov.town) is a $1-a-square favicon wall that treats rot as a game mechanic instead of a fact of life: icons nobody kisses for 90 days fade to grayscale, any square can be evicted for double its price, and sites without a working favicon are put in a public Hall of Clowns. > **TL;DR** — The Million Dollar Homepage, sold out in 2005, has roughly 40 % dead links as of August 2026. Almost every clone has the same problem and does nothing about it; a few expire pixels on a timer instead. Square Town doesn't delete anything. Unkissed icons fade (still owned), evictions let anyone recycle a spot for 2× its price, and broken favicons are surfaced as clowns until they're fixed. The wall stays legible without a moderator. ## Roughly 40 % of the original pixel wall now points nowhere The Million Dollar Homepage sold a million pixels at $1 each in 10×10 blocks and sold out in five months in 2005 for $1.04M. It has been frozen ever since. As of August 2026 it's a sold-out archive where roughly 40 % of the links are dead — the buyers' sites folded, moved, or let their domains lapse, and the wall has no way to notice. That's not a knock on the original; it was a one-off stunt and it finished. But it is what happens to every wall that sells "forever" and then stops touching the data. Twenty-one years is long enough for most small websites to die at least once. Full autopsy: [the Million Dollar Homepage 21 years later](/blog/million-dollar-homepage-21-years-later). ## Why walls rot: sites die and nobody prunes Three things happen to a link on a wall, in this order: 1. **The site changes.** It moves to a new domain, gets acquired, redirects to a parking page. The link still resolves, so it looks fine, but it isn't what the buyer paid to show. 2. **The site dies.** DNS goes, TLS expires, the host returns 404 or nothing. The block on the wall is now a picture of a company that no longer exists. 3. **Nobody prunes.** The wall operator has no incentive to remove a paid block (the money's already in), no signal that it's dead (nobody's checking), and often no operator at all any more. In our August 2026 survey of 434 pixel walls and logo boards, 160 are dead outright — the wall itself is the dead link. Uploaded images make it worse. A pixel block is a static PNG the buyer sent in once. It can't go stale on its own, so it keeps advertising a dead thing with perfect confidence. A favicon, by contrast, is fetched live from the site; when the site goes, the icon goes with it. That's one of the reasons [favicons beat pixels](/blog/why-favicons-beat-pixels). ## What other walls do about it: mostly nothing, occasionally a timer | Approach | Who does it (as of Aug 2026) | What it means for the wall | |---|---|---| | Nothing — sell it once, keep it forever | The Million Dollar Homepage, The Forever Wall, Link for a Dollar, Million Squares Project, most clones | Rots at the rate the web rots; dead blocks stay until the wall itself dies | | Expire pixels on a clock | 9Mpixels (2024, now dead): free pixels expired after 24 h unless paid for | Keeps the wall moving but punishes everyone equally, live or dead | | Rent for a fixed term | Pixel Spotlight: £500 per block for 12 months, blocks expire after a year | Clean, but it's advertising rental, not ownership | | Edit window then freeze | New Million Dollar Homepage: editable for 5 years, then locked for 20 | Postpones the rot; doesn't stop it | | Signal-based decay | Square Town: fade unless kissed, evict for double, clowns for broken icons | Dead things fade and get recycled; live things stay for free | Source for the competitor rows: our [pixel wall graveyard](/blog/pixel-wall-graveyard-why-clones-die) survey, August 2026. The pattern is clear enough. Timers and rentals fix rot by making nothing permanent. Doing nothing keeps "forever" but lets the wall die from the inside. Square Town tries to keep the one-time price and still have a pruning mechanism — three of them, in fact. ## Answer one: unkissed icons fade to grayscale (they are not deleted) Every icon on Square Town has a last-kissed timestamp. Anyone — owner, stranger, rival — can click any icon and press 💋. It's free, public, and counted (there's a "Kiss of the World" leaderboard). If nobody kisses an icon for 90 days, it fades to grayscale with a small 💔 and its card says "Unkissed for 90 days — it's fading. Be kind." That is the entire penalty (the whole rulebook is on [how it works](/how-it-works)). The square is still owned. The link still works. The deed is still valid. One kiss — from anyone — restores full colour instantly. Nothing is deleted and nobody has to appeal to a moderator. Why this works against rot: a site that people still visit tends to get kissed, because its owner cares, its users find it, or a passer-by clicks 💋 out of respect (or pity). A site nobody's touched in three months goes grey, which is exactly the visual signal a wall of links needs: *this one may be stale*. Grey icons don't drag the wall down the way dead PNGs do; they read as dormant, which is honest. The full mechanics are in [kiss the icon: decay explained](/blog/kiss-the-icon-decay-explained) and the [glossary entry](/glossary/kiss-the-icon). The tuning is deliberate. 90 days is long enough that a working site with a handful of fans never fades by accident, and short enough that a wall full of abandoned domains would grey out within a season. ## Answer two: evictions recycle valuable spots The second mechanism is money. Any square on Square Town can be taken by paying double what its current owner paid. A $1 square costs $2 to evict; the next evictor pays $4; then $8. The evicted site is announced in the live feed ("💀 x evicted y for $2") and disappears from the wall; the evictor gets the exact cell. For rot, this means the desirable spots can't stay dead. If a square next to the Throne is owned by a site that folded in 2027, and it's greyed out for want of a kiss, someone will pay $2 for it. The wall prunes itself where pruning matters most: the centre, which everybody sees first. Cheap, unloved corners may sit grey for a long time, which is fine — nobody's looking there anyway, and $2 buys them back the moment someone does. See [the economics of eviction](/blog/economics-of-eviction) for how the doubling plays out. Evictions also mean "forever" on Square Town is honest: it's forever*, unless someone pays double. That asterisk is the price of a wall that doesn't rot. ## Answer three: the Hall of Clowns surfaces broken favicons The third mechanism catches the sites that never had it together. When a square is bought, Square Town asks Google's favicon service for the domain's icon. If the service answers 404 — no favicon at all — the square shows a 🤡 instead of an icon and the domain is listed in the public Hall of Clowns in the side panel. There's a public recheck ("I fixed my favicon"), and escaping the Hall is announced in the feed too. The same detector runs on every recheck, and rechecks are public (`POST /api/recheck/:id`, no key, no throttle — it's in the [API docs](/api)). So a domain that *loses* its icon later — because the site went away and the favicon service eventually stopped returning one — can be flipped to a clown by anyone who bothers to ask. A clown is a visible flag on the wall that something's wrong with that site. Nothing is removed. The owner can fix the favicon and recheck; a rival can pay double and take the spot; or it can sit there in a red nose, which is a kind of public service. More on the mechanism at [/glossary/hall-of-clowns](/glossary/hall-of-clowns). ## What this doesn't fix Honesty section. Square Town's mechanics don't check whether your *page* is alive. A domain that redirects to a parking page but still serves a favicon looks healthy on the wall until nobody kisses it. A dead site with an enthusiastic ex-founder who kisses it every 89 days stays in colour indefinitely (that's allowed; kissing is a signal that someone cares, and someone does). And Square Town's own clicks go through `/go/:id`, a plain 302 redirect — no link equity, no crawler magic, so a dead link on Square Town is only a dead link, not an SEO problem for anyone. What the three mechanisms buy is a wall that *converges* on being alive: dead things fade, valuable dead things get bought out, and broken things get labelled, all without an operator pressing delete. That's the difference between a monument and a place — and it's the reason [Square Town launched](/blog/square-launch) with three pruning rules instead of a moderator. ## FAQ ### How many of the Million Dollar Homepage's links are dead? Roughly 40 % as of August 2026, per our landscape survey of 434 pixel walls. It sold out in 2005 and has been a frozen archive since; the wall has no mechanism to notice a dead link. ### Does Square Town delete squares whose sites have died? No. Nothing is deleted. Icons not kissed for 90 days fade to grayscale (still owned, still linked); anyone can evict any square by paying double what it last sold for; and domains without a working favicon show a clown until fixed. ### What does kissing an icon actually do? It resets the icon's 90-day timer and increments its kiss count. Anyone can kiss any icon for free by clicking it and pressing 💋. A single kiss restores a faded icon to full colour. ### Can I keep my own square alive by kissing it myself? Yes. Kissing your own icon once every 90 days keeps it in colour indefinitely. Kisses are public and counted, so a self-kissed square is visibly a square someone still cares about. ### Do other pixel walls expire pixels? Some do. As of August 2026, 9Mpixels (now dead) expired free pixels after 24 hours unless paid for; Pixel Spotlight rents blocks for 12 months; New Million Dollar Homepage allows edits for 5 years then locks for 20. Most walls, including the original, do nothing. ### Is a grayscale icon still clickable? Yes. Fading is cosmetic. The link, the deed, the click and view counts all keep working; the icon just loses its colour and gets a 💔 until someone kisses it. --- # The economics of eviction: what doubling prices actually do URL: https://square.pov.town/blog/economics-of-eviction Description: How Square Town's evict-for-double rule plays out: the $1 to $1,024 ladder, why most squares are never evicted, how the Throne prices itself, and when to evict. Last updated: 2026-08-18 Eviction on Square Town ([square.pov.town](/)) is a fixed rule: anyone can take any square by paying double what its current owner paid, the evicted owner is not refunded, and the next evictor pays double *that*. Because the price doubles every time, a $1 square costs $1,024 after ten evictions, which is why the rule mostly acts as a deterrent: the vast majority of squares are never worth evicting, and the few that are get expensive fast. The Throne runs the same rule from a $100 start. > **TL;DR** — Doubling makes eviction cheap once and ruinous repeatedly. Expect it to happen to a handful of famous or central squares, almost never to yours. Evict someone only if the spot is worth *at least* twice what they paid to you *and* you can live with being evicted at double your price with no refund. Compared to earth.tattoo (also doubling), Tocka (+1¢), TymeSqr (doubling with a 1.5× payout) and Harberger walls (continuous tax), Square Town's version is the simplest and the least forgiving. ## The doubling ladder: $1 to $1,024 in ten steps Every square starts at $1 (see [pricing](/pricing)). Evicting it costs $2. Evicting the evictor costs $4. The table is the whole economy. | Eviction # | Evictor pays | Cumulative spent on this square | Who lost money | |---|---|---|---| | 0 (original buy) | $1 | $1 | nobody yet | | 1 | $2 | $3 | original owner ($1) | | 2 | $4 | $7 | evictor 1 ($2) | | 3 | $8 | $15 | evictor 2 ($4) | | 4 | $16 | $31 | evictor 3 ($8) | | 5 | $32 | $63 | evictor 4 ($16) | | 6 | $64 | $127 | evictor 5 ($32) | | 7 | $128 | $255 | evictor 6 ($64) | | 8 | $256 | $511 | evictor 7 ($128) | | 9 | $512 | $1,023 | evictor 8 ($256) | | 10 | $1,024 | $2,047 | evictor 9 ($512) | Two things fall out of this. First, the price you pay to evict is always exactly the sum of everything everyone before you paid, plus $1. Second, whoever holds a square has always paid more than all previous holders combined. There is no cheap way to be late. ## Why most squares are never evicted The wall has up to 1,048,576 squares, and only the central 16×16 is live at launch; each ring unlocks when the live area is 70 % full, so there is nearly always an empty cell for $1 a short distance from wherever you're looking. Paying $2 to evict a random $1 square gets you almost the same spot as paying $1 for the empty one next to it, plus a public 💀 in the live feed and a target on your back. For the ordinary square, eviction is dominated by just buying nearby. Eviction only makes economic sense when the *specific* cell matters: the cells touching the Throne's aura, the four corners of the launch 16×16, a spot next to a famous domain, or a square whose owner you'd enjoy deposing. That is a small set of cells, and after one or two evictions each of them costs enough that the joke stops being cheap. Everyone else's dollar square is safe by economics, not by rule. ## The Throne prices itself The Throne is the 4×4 dead centre of the wall: one owner, gold tile, crown, intro price $100. It follows the same doubling rule at a higher base: $100 → $200 → $400 → $800 → $1,600 → $3,200 → $6,400. Nobody sets its price. If it's cheap, that means nobody has wanted it enough to double the last payment; if it's expensive, that's the market having spoken, seven times. This is what "prices itself" means: the Throne's current price is a record of how many people cared. Compare it with the alternatives in the landscape as of August 2026: Milliboard's #1 goes to the highest single payment and can be outbid by 1¢, and The Pixel Orbit's centre goes to the highest *cumulative* payer. Both let a rich buyer sit on the top for a marginal cent. Doubling means the tenth Throne owner pays $51,200, and there is no marginal way in. Read more in [the Throne explained](/blog/the-throne-explained). ## Doubling is a deterrent, not a revenue plan It's tempting to read the ladder as "Square Town makes $2,047 per contested square." In practice doubling stops contests. After the second or third eviction, the next step is more than most people will pay for a favicon square, and the ladder freezes at whatever level the last person's ego reached. That's the point. A wall where every square is permanently for sale at a flat price gets churned; a wall where each takeover doubles the stakes gets a *few* memorable fights and then calm. The other deterrent is public. Every eviction is announced in the live feed ("💀 x evicted y for $N") to every open browser over WebSockets. Being the person who evicted a hobby project for $2 is a reputation, not just a purchase. ## Evicted owners are not refunded When you're evicted, your listing is marked evicted, your square shows the new owner's favicon, and your `/go/` link stops working. You do not get your money back and you get no cut of the evictor's payment. Your deed URL still opens but the square is no longer yours. This is deliberately harsher than some competitors (see below), and it's the honest cost of a $1 price with no accounts: there is nobody to pay a refund *to* except a deed URL, and the site is built to have no ledger of people. See [what happens when you get evicted](/blog/what-happens-when-you-get-evicted). ## Should I evict someone? A decision guide 1. **Is there an empty cell within a few squares?** If yes, buy that for $1. You'll be next to the same neighbours without the drama. 2. **Do you want the spot for more than 2× what they paid?** Click the square: the card shows the exact eviction price. If it says $2 and you don't care about that exact cell, no. If it says $64, someone has already fought over it — decide whether you're joining a fight or ending one. 3. **Can you afford to lose it at double?** Assume someone evicts you back. You'll be out your payment, unrefunded, and they'll be in for double. If that outcome would annoy you, don't start. 4. **Is it the Throne?** Then the question is whether holding the centre until the next doubling is worth the current price to you. It's the most visible square on the wall; that's the whole product. 5. **Is it personal?** Fine. That's a valid reason. Just know it's public. ## How other walls handle takeovers (as of August 2026) Escalating-price takeover is an old idea; Square Town's contribution is a flat 2× with no payout (short definition at [/glossary/eviction](/glossary/eviction); the closest live comparison is [Square Town vs earth.tattoo](/vs/earth-tattoo)). Facts below are from the competitor landscape as of August 2026. | Site | Takeover rule | Does the evicted owner get anything? | Notes | |---|---|---|---| | Square Town (square.pov.town) | Pay 2× what the current owner paid | No | Applies to every square and the Throne; live feed announces it | | earth.tattoo | Outbid the current owner at $1 → $2 → $4 → $8 per geographic tile | Prior art archived; evicted owner emailed | Pixel art on a 3D globe, crypto only | | Tocka | Each takeover raises that pixel's price by 1¢ | No payout noted | Painted pixels, credits, live canvas | | TymeSqr (dormant) | Price doubles each purchase | Prior owner gets 1.5× plus 1 % of future sales | EU-only, few squares | | King of the Ether Throne (2016, dead) | Claim price +33 % each claim, 2 % commission | Previous monarch paid out from the claim | Single throne; monarch "dies" after 14 days and price resets | | TabRush | +40 % per sale tier, "until someone steals it" | — | About 8 browser-tab slots | | Sherwood, The Space, Harberger Ads, This Artwork Is Always On Sale | Harberger tax: owner sets a price, pays a periodic tax, anyone can buy at that price | Yes — the sale price | Continuous tax instead of a one-off takeover | | Pixel Inc (dead) | Each resale doubles the price | Yes | Doubling with tokenomics | | Satoshi's Place | Overpaint any pixel for 1 satoshi | No | Flat price, no escalation | The Harberger family is the interesting contrast. Under a Harberger rule you name your own price and pay tax on it forever; you're protected from lowball takeovers only by paying more. Under Square Town's rule you pay once, name nothing, and are protected only by the fact that evicting you costs double. Harberger is fairer to the evicted and worse for the lazy; doubling is brutal to the evicted and free for everyone who just wants to sit there. Square Town is a $1 site with no accounts, so it picked the rule that needs no ledger. ## FAQ ### How much does it cost to evict a square on Square Town? Exactly double what the current owner paid. A fresh square costs $2 to evict; a square evicted once costs $4; the Throne starts at $100 and costs $200 to take, then $400, and so on. The exact price is shown on the square's card. ### Do I get my money back if I'm evicted? No. Evicted owners are not refunded and receive no share of the evictor's payment. Your deed URL still opens but the square belongs to the evictor. ### What is the price of a square after ten evictions? $1,024, because each eviction doubles the last price paid: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1,024. Total spent on that square by then is $2,047. ### Why does the Throne start at $100 instead of $1? It's the 4×4 dead centre and the first thing every visitor sees; the higher base makes the doubling ladder reach serious money quickly ($100 → $200 → $400 → $800), so the Throne's price reflects how many people have wanted it. ### Can I be evicted from a locked or faded square? Any paid square in the live area can be evicted, including one whose icon has faded to grey from 90 days without a kiss. Fading changes the look, not the ownership or the eviction price. ### Is eviction the same as Harberger tax? No. Harberger walls make owners set a price and pay ongoing tax; anyone can buy at that price. Square Town has no tax and no self-set price: takeover is always exactly 2× the last payment, once. --- # Favicon design tips: an icon that reads at 16 pixels URL: https://square.pov.town/blog/favicon-design-tips-16px Description: Practical favicon design tips: one shape, high contrast, no text, solid background, tested at 16 and 32 px — plus how Square Town's wall renders your icon. Last updated: 2026-08-18 A good favicon is one shape, two colours, no text, on a solid background, and it looks the same at 16 pixels as it does at 512. That's the whole brief. Everything below is detail: why each rule exists, how to test, and what happens to your icon on Square Town (square.pov.town), the $1 favicon wall ([how it works](/how-it-works)), where it sits at 1×1 next to hundreds of other icons and, in 3D, becomes a tower tinted with its own dominant colour. > **TL;DR** — Design for 16×16 first and scale *up*. One recognisable silhouette. Contrast against both white and near-black. No wordmarks, no thin lines, no gradients that die at small sizes. Solid or clearly-shaped background so it doesn't vanish on a dark tab bar. Ship a 32×32 PNG at minimum, ideally an SVG plus PNG fallbacks. Test with `https://www.google.com/s2/favicons?domain=yourdomain.com&sz=64` — that is exactly what Square Town (and a lot of the web) will show. ## Design at 16 pixels, not 512 Most bad favicons are good logos shrunk. A logo is designed for a business card or a hero banner; a favicon is designed for a browser tab, a bookmark bar, a history list, and — on Square Town — one cell of a wall. At 16×16 you have 256 pixels. A stroke thinner than one pixel becomes a smear; two similar colours become one; a word becomes lint. So start small. Open a 16×16 canvas (or a 32×32 one and squint) and draw the thing that is *unmistakably you* at that size. Then, if you want, draw the luxurious 512×512 version for app icons and social cards. The small one is the constraint that matters; the big one is a treat. ## One shape, and it should be a silhouette The test: fill your icon in a single flat colour. Can you still tell what it is? A good favicon survives being a silhouette because at 16 px that's roughly what it becomes anyway. Letters work if it's *one* letter, bold, filling the box. Symbols work if they're chunky. Mascots work if the outline is distinctive (a fox's ears, a bird's beak) rather than the face detail. Two shapes is a stretch. Three is noise. If your logo is a wordmark, your favicon is the first letter or an abstract mark that shares its colour — not the wordmark. ## High contrast, tested against light and dark Your icon will sit on a white tab bar in one browser and a near-black one in the next. On Square Town each icon is drawn on a small tile that's white in light mode and near-black in dark mode, and the wall's sun follows the viewer's local time of day, so at night everything's dimmer. Design for both: - Prefer a **solid, saturated background** with a light foreground, or a strong dark shape on white. A dark navy mark with no background disappears on a dark tab bar; a white mark with no background disappears on a light one. - If you must go transparent, give the shape a **1-pixel contrasting outline** or a filled circle behind it. - Avoid **mid-tone greys** as the main colour. They're invisible on both light and dark, and (see below) they give Square Town nothing to work with. Check both extremes explicitly. Put the 16 px PNG on `#ffffff` and on `#111111` and look at it from arm's length. ## No text, no thin lines, no fine gradients Text: at 16 px a four-letter word is 4 px per letter, which is not a letter. One initial is the exception, and only if it fills the box. Thin lines: anything under 2 px at 32×32 (1 px at 16×16) will anti-alias into fog. Make strokes chunky and even. Gradients: a subtle gradient across 16 pixels is a flat colour with extra bytes; a strong gradient turns your icon into two colours fighting. Flat is fine. Flat is good. Similarly, drop shadows, glows and 3D bevels are 2009. They cost pixels you don't have and they muddy the silhouette. If you want depth, Square Town will give your icon a whole tower. ## Solid background, or a shape with a definite edge The tab bar isn't the only place your favicon appears. Bookmark managers, reading lists, link previews, share sheets, RSS readers and every favicon wall put it on *some* background you don't control. A rounded square or circle of solid colour behind the mark is the most reliable framing there is — that's why so many app icons look like that. On Square Town, icons are drawn on a small tile; a solid background makes yours a crisp coloured stamp, a transparent one makes it a floating shape on the tile colour, which is fine but less bold. Also, corners: many renderers round or pad icons (Square Town draws each icon inset on its tile; browsers vary). Don't put important detail in the outer 1–2 pixels. ## Ship the right files Minimum: a 32×32 PNG at `/favicon.ico` or linked with ``. Better: an SVG (``) with PNG fallbacks at 32 and 180 (`apple-touch-icon`) and a 512 for manifests. The mechanics of *where* to put these are in [how to add a favicon](/blog/how-to-add-a-favicon). SVG favicons can respond to the user's colour scheme with an embedded style: ``. That's great for tab bars. Just remember that most third-party consumers — favicon services, walls, link previews — rasterise the SVG *once* without a colour scheme, so the default (light-scheme) styling is what they'll show. Make sure that version stands on its own, and don't rely on the dark variant to save an icon that only works on black. ## What Square Town does with your icon Square Town doesn't accept uploads. You paste a URL, and the wall fetches your favicon through Google's favicon service (`https://www.google.com/s2/favicons?domain=…`), proxied at 128 px for the WebGL wall and shown at 64 px in the little card that opens when someone clicks your square. If Google's service has no favicon for your domain (it answers 404), you get a 🤡 on your square and a place in the public [Hall of Clowns](/glossary/hall-of-clowns) until you add one and press "I fixed my favicon". Details in [Hall of Clowns: sites without favicons](/blog/hall-of-clowns-sites-without-favicons). Two consequences for design: 1. **Google's copy is what counts.** The service caches; after you change your icon it can take a while to update, and it picks the icon it likes from your `` tags. Check the URL above with `&sz=64` and `&sz=128` and design for what comes back. 2. **Your dominant colour becomes your tower.** In the 3D view (ctrl+drag) every favicon is a tower whose height is its click count and whose sides are tinted with the icon's dominant *chromatic* colour — pixels are binned by hue and weighted by chroma, so a blue icon with white and black detail still reads as blue. Grey, black and white icons have no hue to borrow, so they get a neutral slate whose lightness follows the icon (dark icon → dark tower). If you want a red tower, be red. If you want to blend into the skyline, be grey. That colour rule is a decent design test in itself: if a hue-weighted sampler can't decide what colour your icon is, a human at 16 px probably can't either. ## How to check yours in 30 seconds 1. Open `https://www.google.com/s2/favicons?domain=yourdomain.com&sz=64` in a tab. If it's a generic globe or a 404, you have no favicon that the wider web can see — fix that first. 2. Zoom the browser out until that image is roughly 16 px wide. Still recognisable? Still you? 3. Save it, put it on white and on `#111` in any image editor. Contrast fine on both? 4. Look at your tab bar next to ten other tabs. Does yours pop, or does it look like three of the others? 5. Optional: buy a $1 square on [square.pov.town](/) — click an empty cell, paste the URL, pay — and see how it looks on a wall of strangers, and what colour your tower comes out. If it's grey and you weren't going for grey, you have your answer. (Where to put it: [how to pick a good square](/blog/how-to-pick-a-good-square).) ## A short table of do and don't | Do | Don't | |---|---| | One bold shape or one initial | A wordmark, a slogan, a URL | | Solid saturated background, light mark (or the reverse) | Transparent mid-grey on nothing | | Strokes ≥ 2 px at 32×32 | Hairlines, fine hatching | | Flat colour, hard edges | Gradients, shadows, bevels | | Test at 16 and 32 on white and near-black | Only ever look at the 512 | | SVG + 32 px PNG + 180 px apple-touch-icon | A single 16 px .ico from 2004 | | Check Google's favicon service shows it | Assume the wall (or anyone) will fetch your `` directly | ## FAQ ### What size should a favicon be designed at? Design at 16×16 or 32×32 first, then scale up. Ship at least a 32×32 PNG, ideally an SVG plus PNG fallbacks (32, 180 for Apple touch, 512 for manifests). ### Should a favicon have text? No, apart from a single bold initial that fills the box. Words are unreadable at 16 px and turn into noise on any wall of icons. ### Do I need a solid background? Not strictly, but it's the safest choice: it guarantees contrast on white and on dark tab bars, and on Square Town it makes your square a crisp coloured stamp rather than a floating shape. ### How does Square Town choose the colour of my 3D tower? It samples the favicon client-side and finds its dominant chromatic hue (weighted by chroma, so white/black detail doesn't dilute it). Grey, black or white icons get a neutral slate whose lightness follows the icon. ### Can I upload a different image to Square Town instead of my favicon? No. Square Town is URL-only; it fetches the favicon via Google's favicon service. If your site has no favicon you get a clown until you add one, and there's an "I fixed my favicon" recheck button. ### Will an SVG favicon with dark-mode styles work everywhere? In tab bars, mostly yes. Third-party consumers — favicon services, walls, previews — usually rasterise the default styling once, so make sure the light-scheme version works on both light and dark backgrounds on its own. --- # Free and nearly-free marketing for solo developers (a $20 budget) URL: https://square.pov.town/blog/free-and-cheap-marketing-for-solo-developers Description: How a solo developer markets a side project on $20: a budget table (domain, $1 squares on Square Town, one tiny paid test) plus the free tactics that work in 2026. Last updated: 2026-08-18 A solo developer can market a side project properly on a $20 budget: roughly $10 goes to a domain, $3–$5 goes to permanent one-time placements such as $1 squares on Square Town ([square.pov.town](/)), and the rest is held back for one small paid experiment once you know what message works. Everything with real reach — Show HN, Reddit, directories, your own writing, a newsletter — is free and costs time instead. Here's the budget, then the tactics in order of return per hour. > **TL;DR — the $20 budget** > > | Line | Amount | What it buys | One-time or recurring | > |---|---|---|---| > | Domain | ~$10 | a `.com`-ish domain for a year (prices vary by TLD and registrar) | yearly | > | $1 squares on Square Town | $3 | one square each for your project, its docs/blog, and one older project (or three projects) | one-time | > | Held back | $7 | one tiny paid test *after* launch, or nothing | — | > | Everything else | $0 | Show HN, Reddit, directories, newsletter, changelog, writing, replies | time | > | **Total** | **$20** | | | If you'd rather not hold anything back, spend the $7 on seven more squares — one per project — and skip the paid test entirely. For a developer with many side projects that is the better trade; see [/for/developers-with-many-side-projects](/for/developers-with-many-side-projects). ## Why the budget is mostly zeros Marketing advice for solo developers usually fails in one of two directions: "spend nothing, just build" (nobody finds it) or "here's a $500 stack" (you don't have $500, and you'd waste it before you know your message). The middle is where the return per hour is: things that are free because someone else built the audience, plus a very small amount of money on things that are permanent. Two ideas hold the whole list together: 1. **Free channels are free because they're competitive.** Show HN, Reddit and directories cost nothing because they're crowded; the price is writing something specific enough to survive the crowd. 2. **Spend money only on things that don't expire.** A domain, a permanent listing, a one-time square. Anything monthly is a decision you have to keep re-making, and solo developers stop re-making decisions about side projects around week six. ## The three paid lines, explained ### ~$10: the domain The one non-negotiable spend. A domain you own is the only address that survives you changing hosts, frameworks and minds. Get HTTPS on it (free with any modern host), point both the naked domain and `www`, and put the favicon and OG image on it before you share it anywhere — see the [launch checklist](/blog/indie-hacker-launch-checklist). ### $3: three $1 squares on Square Town Square Town is a favicon wall: a grid of 1×1 squares, $1 each, one-time, paid via Stripe, no account, no upload. You paste a URL, Square Town fetches the favicon, you click an empty cell to pick your spot, and the icon sits there, linked, until someone pays double to evict you. Each square has a deed page with views, clicks and kisses; outbound clicks go through `/go/:id`, are counted, and arrive at your site tagged `utm_source=square.pov.town` so they show as their own row in your analytics. Why it's on a $20 budget: it is the cheapest permanent placement in existence, it takes two minutes, and it gives you a *counted* click-through from strangers per project. Why it's $3 and not $20: it's a niche audience — people who browse favicon walls — with no guaranteed numbers and no SEO effect (the wall is a WebGL canvas; clicks are redirects; there is no link equity, and anyone telling you a pixel wall gives "backlinks" is selling something). One square per thing you want seen is the right dose. Rules on [/how-it-works](/how-it-works); a longer honesty check in [is buying pixels worth it in 2026?](/blog/is-buying-pixels-worth-it-2026). Suggested split for one project: one square for the product, one for the docs or blog (a different favicon or the same one — your call), and one for the older project that most people would click next. Put them in adjacent cells so they read as one neighbourhood. ### $7: held back for one paid test — or seven more squares The most common $20 mistake is spending it on ads *before* launch. You don't know which sentence makes people click yet. After the free launch (below), you will. Then, if you want, run one deliberately tiny paid test on whichever channel your analytics say your people came from — a promoted post, a small newsletter sponsorship slot, whatever costs single-digit dollars — with the sentence that already worked. If nothing you can buy for $7 fits, spend it on seven more squares or on nothing. Not spending is a valid line item. ## The free tactics, in order of return per hour 1. **Write the one-sentence description until it's true.** *Why:* every channel below is a place to paste that sentence. If it's wrong, everything downstream is wrong. Test it on three people who don't know what the project is; if they can't repeat it back, rewrite. 2. **Show HN.** *Why:* the best free burst of technical attention there is. Title "Show HN: X – one sentence", post when you can answer comments for six hours, and treat the thread as the product page. 3. **One niche subreddit and r/SideProject.** *Why:* the niche sub is where users are; r/SideProject is where tolerance for self-promotion is. Different posts for each — the niche one written as "here's a thing for people like us", not "I launched". 4. **Two or three directories that already list things like yours.** *Why:* a trickle forever, one hour once. Skip anything that wants a reciprocal link, a fee, or a "premium" tier at launch. [Places to promote indie projects under $10](/blog/places-to-promote-indie-projects-under-10-dollars) is the vetted list. 5. **A "how I built it" post on your own domain.** *Why:* the story travels further than the product, and it lives on the domain you paid $10 for. Stack, the hard part, what you'd change. Link it from the Show HN comment. 6. **A newsletter box, from day one.** *Why:* every free channel is a spike; the list is the only part of the spike you keep. One field, one button. Even 40 addresses is a launch audience for the next thing. 7. **A public changelog.** *Why:* it's proof of life and a reason for people to come back. Dated bullets. Costs ten minutes per release. 8. **Reply to everything for 72 hours.** *Why:* comments are the launch. Silence reads as abandonment, and abandonment is the thing people most fear about indie products. 9. **Answer questions where they're already being asked.** *Why:* forums, Stack Overflow-style sites, Discords in your niche. Not "check out my tool" — a real answer, with the tool mentioned when it's genuinely the answer. Slow, compounding, free. 10. **`llms.txt` and a sitemap.** *Why:* increasingly, "what's a tool for X" is asked to an assistant that read your site. Twenty minutes to make sure the summary it gives is right. 11. **Cross-promote your own things.** *Why:* if you have more than one project, each is a channel for the others. A footer link, a "more from me" line, and — on Square Town — adjacent squares. See [how to promote 10 side projects at once](/blog/how-to-promote-10-side-projects-at-once). 12. **Kiss your squares.** *Why:* on Square Town, an icon not kissed for 90 days fades to grayscale (still yours, still linked). Kissing is free and takes one click. It's also the world's cheapest reminder to open your analytics. ## What $20 doesn't buy, and that's fine - **Ads that work.** $7 is a test, not a campaign. Its job is to tell you whether the channel is worth $70 later. - **Guaranteed traffic from anywhere.** Not from Show HN, not from Reddit, not from a $1 square. Everything on this list is a probability, and the free ones are the best probabilities per hour. - **SEO.** Nothing here buys ranking. Your own writing on your own domain (item 5) is the only thing on the list that has anything to do with search, and it takes months. ## The same budget, three ways | Situation | Domain | Squares | Held back | Notes | |---|---|---|---|---| | One project, first launch | $10 | $3 | $7 | run one tiny test after Show HN, or don't | | Many side projects | $10 | $10 (one per project) | $0 | the wall becomes your visual index | | Domain already paid | $0 | $5 | $15 | or: five squares plus $15 towards next year's domain | The point of the table is that the numbers barely change. Marketing for one solo developer is a domain, a few permanent one-time placements, and a great deal of writing and replying that costs nothing but the evening you'd otherwise have spent adding a feature nobody asked for. ## FAQ ### How can a solo developer market a side project for free? Write a one-sentence description that's actually true, post to Show HN and one niche subreddit (plus r/SideProject), submit to two or three relevant free directories, publish a "how I built it" post on your own domain, collect emails from day one, keep a public changelog, and reply to every comment for 72 hours. ### What should a $20 marketing budget for a side project go on? About $10 on a domain, $3 on three $1 squares on Square Town (product, docs/blog, one older project), and $7 held back for one tiny paid test after launch — or seven more squares if you have more projects. Everything else that works is free. ### Is a $1 square on Square Town good marketing? It's the cheapest permanent placement there is: $1 one-time, your favicon on a live wall with a counted click-through and a deed page with views, clicks and kisses. It's a niche audience with no guaranteed traffic and no SEO effect, so it's a small line item, not a strategy. ### Does buying a square give my site a backlink? No. Square Town's wall is a WebGL canvas and clicks go through a `/go/:id` redirect. There is no link equity or ranking benefit; the value is visibility to a niche audience, the showcase, the game and the per-square click counts. ### Should I spend the budget on ads? Not before launch — you don't know which message works yet. After the free channels have told you where your people come from and what they clicked, one single-digit-dollar test on that channel is reasonable. Not spending is also fine. ### What's the one thing worth paying for? The domain. It's the only address that survives changing hosts, frameworks and your own mind, and every other tactic points at it. ### How do I keep marketing after launch without a budget? Changelog entries, answering questions where they're already asked, cross-promoting your own projects, emailing your list when something ships, and the occasional free kiss on your Square Town icons so they don't fade. All time, no money. --- # The Hall of Clowns: why sites without favicons get a 🤡 URL: https://square.pov.town/blog/hall-of-clowns-sites-without-favicons Description: Square Town gives sites with no favicon a clown emoji and a public Hall of Clowns entry. How the check works, how to fix your favicon, and the recheck button. Last updated: 2026-08-18 The Hall of Clowns is Square Town's public list of squares whose site has no favicon. When you buy a square on Square Town (square.pov.town) it fetches your icon through Google's favicon service; if Google answers 404, your square shows a 🤡 instead of an icon and your domain joins the Hall of Clowns in the side panel. Add a favicon, click your square, press "I fixed my favicon", and you're out — with a 🎈 announcement in the live feed. > **TL;DR** — Square Town never asks you to upload anything; your favicon *is* your square. No favicon means nothing to show, so you get a clown until you fix it. The check is one HTTP request to `google.com/s2/favicons?domain=yourdomain&sz=64`: 200 = icon, 404 = clown, anything else = left alone. Fix: put a `favicon.ico` at your site root or add a ``, wait for Google to notice, then hit recheck. Escaping is public too. ## Why a missing favicon gets you a clown Square Town sells one thing: a 1×1 square that displays your site's favicon and links to your URL. There is no logo upload, no image editor, no size choice — you paste a URL and Square Town fetches the icon. That's the whole product, and it's why a square costs $1 instead of the design-and-upload prices you see elsewhere (see [why every square costs exactly $1](/blog/why-one-dollar)). So a site with no favicon has bought a square and given Square Town nothing to put in it. Leaving it blank would make the wall look broken. Putting a generic placeholder in would be polite and forgettable. Square Town puts a clown there and lists you publicly, because a little embarrassment is the most effective favicon-adoption programme ever devised. The rulebook says it plainly: "If your site has no favicon, you get a clown emoji until you add one, plus a spot in the public Hall of Clowns." It's not permanent and it's not a fine. Your square is still yours, still clickable, still counts views and clicks. It just looks like a clown until you do the ten-minute job the rest of the web did in 2004. ## How the check actually works The detector is deliberately tiny. After every purchase completes, Square Town runs one request in the background: ``` GET https://www.google.com/s2/favicons?domain=&sz=64 ``` Google's favicon service redirects to its gstatic `faviconV2` endpoint. For a domain with a real favicon it returns HTTP 200 and the image. For a domain with no discoverable favicon it returns HTTP 404. Square Town reads only the status: | Google's answer | What Square Town does | |---|---| | 200 | Your square shows your icon; `clown = 0` | | 404 | Your square shows 🤡, your domain joins the Hall of Clowns, the feed says "🤡 yourdomain has no favicon and joins the Hall of Clowns"; `clown = 1` | | Anything else (timeout, 5xx) | Treated as transient; you're left as "unknown" — no clown, no announcement | That's it. Square Town doesn't crawl your HTML, doesn't parse `` tags, and doesn't render your page. It trusts Google's crawler, which is the same source the wall uses to draw every icon (through Square Town's own `/favicon/:domain` proxy, cached at the edge for a day). If Google can't find your favicon, neither can the wall, so a clown is the honest answer. The `?sz=64` matters: Square Town asks for a 64-pixel icon so it has enough resolution for the 3D wall and the enlarged view on the Throne. Google scales whatever you have; you don't need a 64×64 file specifically. See [favicon design tips for 16px](/blog/favicon-design-tips-16px) if you want it to look good small. ## How to get out of the Hall of Clowns Three steps. The middle one is the annoying one. ### 1. Add a favicon to your site The full walkthrough is in [how to add a favicon](/blog/how-to-add-a-favicon). The short version: - Put a file called `favicon.ico` at the root of your domain (`https://yourdomain.com/favicon.ico`). Browsers and Google both check this path by default even with no HTML tag. - Or, better, add a link tag in your ``: `` (or an SVG: ``). Do both if you can. - Make sure the file actually returns 200 with an image content type. A `favicon.ico` that is really an HTML 404 page is the single most common reason a site "has a favicon" and still gets a clown. - Serve it on the exact domain you gave Square Town. If you bought the square as `example.com` but only `www.example.com` serves an icon, add the icon (or a redirect) on the bare domain too. ### 2. Wait for Google's favicon service to notice Square Town's check reads Google's cache, and Google refreshes favicons on its own schedule. There is no button on Square Town's side to hurry it. Practically: publish the icon, confirm it loads in a browser tab, then check `https://www.google.com/s2/favicons?domain=yourdomain.com&sz=64` yourself. When that URL shows your icon rather than an error, you're ready. ### 3. Press "I fixed my favicon" Click your square on the wall and hit the recheck button. Square Town re-runs the same request. If you were a clown and now you're not, the feed announces "🎈 yourdomain added a favicon and escaped the Hall of Clowns", your square redraws with your icon, and your domain drops off the list. Every open browser sees it live. Rechecks are public and unlimited — anyone can press it on any square, not just the owner. If Google still returns 404, nothing changes and you can try again later. ## Why favicons matter beyond Square Town The clown is a joke; the underlying point isn't. A favicon is the smallest piece of branding on the web and one of the most-seen. - **Browser tabs.** With ten tabs open, the icon is the only thing users can see. A blank globe means "which one was that?" - **Bookmarks and history.** Same icon, same recognition, every time someone saves or revisits your page. - **Search results.** Google shows a site's favicon next to its listing in search results, on mobile and desktop. A missing icon there is a missing chance to be recognised before the click. - **Home-screen shortcuts, link previews, reading lists.** Everything that summarises a page borrows the icon. - **Directories and walls.** Square Town is the extreme case — your favicon *is* your entry — but plenty of link directories and start pages pull it too. Read [why favicons beat pixels](/blog/why-favicons-beat-pixels) for why Square Town built the whole wall on them. If Google's service can't find your favicon, all of the above is showing a blank. The clown just makes it visible. ## Mini how-to: the two-minute favicon If you have nothing at all, this gets you out of the Hall of Clowns: 1. Make a square image — 512×512 PNG or an SVG. A bold letter on a solid colour reads at 16px; fine detail doesn't. 2. Save it as `/favicon.svg` (or `/favicon.png`) and, for older clients, export a `/favicon.ico` too. 3. Add to ``: `` and ``. 4. Deploy, open your site in a fresh tab, confirm the icon appears. 5. Check `google.com/s2/favicons?domain=yourdomain&sz=64` until it shows your icon. 6. Click your square on [square.pov.town](/) and press "I fixed my favicon". For static-site generators, frameworks and edge cases (subpaths, redirects, Cloudflare Pages), see the longer [how-to-add-a-favicon guide](/blog/how-to-add-a-favicon). ## FAQ ### What is the Hall of Clowns? The Hall of Clowns is the public list, in Square Town's side panel, of squares whose site has no favicon. Those squares show a 🤡 instead of an icon until the owner adds one and passes a recheck. See the [glossary entry](/glossary/hall-of-clowns). ### How does Square Town decide my site has no favicon? It requests `https://www.google.com/s2/favicons?domain=yourdomain&sz=64`. HTTP 200 means you have an icon; HTTP 404 means you don't and you get a clown. Other responses are treated as transient and leave you unmarked. ### I have a favicon. Why am I still a clown? Usually one of: the icon is only on `www.` and not the bare domain (or vice versa); `favicon.ico` returns an HTML page instead of an image; the icon is served with a wrong content type or blocked from crawlers; or Google's cache hasn't refreshed yet. Check the Google URL above — Square Town only sees what it sees. ### How do I leave the Hall of Clowns? Add a favicon, wait until Google's favicon service returns it, then click your square on the wall and press "I fixed my favicon". If the recheck passes, the feed announces your escape and the clown is gone. ### Does being a clown affect my square's price or ownership? No. Your square is still yours, still counts clicks and views, and its eviction price is unchanged. The only effect is cosmetic — and public. ### Can someone else recheck my square? Yes. Rechecks are public and unthrottled; anyone can click a clown square and press the button. It can only ever help you. --- # A short history of paying to hold the centre URL: https://square.pov.town/blog/history-of-pay-to-hold-the-center Description: The pay-to-hold-the-centre mechanic from King of the Ether Throne (2016) via Milliboard, The Pixel Orbit and overwrite.place to Square Town's $100 doubling Throne. Last updated: 2026-08-18 "Pay to hold the centre" is a web mechanic in which exactly one person occupies a single privileged spot — the throne, the #1 rank, the middle of the canvas — and anyone can take it by paying more than the current holder did. The first well-documented version is King of the Ether Throne (2016, +33 % per claim). Square Town ([square.pov.town](/)) is the current form: a 4×4 Throne in the dead centre of a $1 favicon wall, $100 to start, and every eviction doubles the price. > **TL;DR — the lineage, as of August 2026** > > | Year | Site | What is held | How you take it | Status | > |---|---|---|---|---| > | 2016 | [King of the Ether Throne](https://www.kingoftheether.com/thrones/kingoftheether/index.html) | a name in a "Hall of Monarchs" | pay the claim price (start 0.5 ETH), +33 % each claim; monarch "dies" after 14 days | dead | > | ? | The King of the Internet | a single throne (name/rank) | pay $1 more than the current king; proceeds to charity | dead (DNS gone Aug 2026) | > | 2026 | [Milliboard](https://www.milliboard.com) | #1 on a ranked list, "Daily Throne" | highest single payment; outbid by 1¢; freezes forever at $1,337,690 | active | > | 2026 | [The Pixel Orbit](https://thepixelorbit.com) | the exact centre of the canvas | highest *cumulative* payer; canvas re-sorts around them | active | > | 2026 | [overwrite.place](https://overwrite.place) | the whole homepage (one artwork) | agents pay/submit; dethroned entries shrink to a small permanent square | active | > | 2026 | Square Town | the 4×4 dead centre of a favicon wall, gold tile with a crown | $100 intro; evict for double the last price, doubling every time; ring around it can't be built on | active | Competitor facts here come from Square Town's own landscape file, verified 17–18 August 2026. If something has changed since, assume the change, not the table. ## The mechanic is older than the web games that use it Kings, hills, and the person willing to pay a bit more than the last person: the "king of the hill" auction is basically a dollar auction with a leaderboard bolted on. What the web added is *publicness* — the whole point is that everyone can see who holds the spot and what it cost — and *irreversibility* — you don't get your money back when you are deposed. Every site below is a variation on those two properties plus a price rule. The price rule is where the design lives. Too gentle (+1¢) and the throne is a spam magnet. Too steep and it stops changing hands after the third holder. Time-limited and it resets; unlimited and it eventually freezes. Every entry in the table below picked differently. ## 2016: King of the Ether Throne, the ancestor King of the Ether Throne was an Ethereum contract with a web front-end. You paid the current claim price to become monarch and have your name written into a Hall of Monarchs; the next claim price was 33 % higher; the contract took a 2 % commission. A monarch who was not deposed within 14 days "died", and the price reset. Three things about it matter for everything that came after: 1. **The compounding step.** +33 % per claim means the tenth monarch pays roughly 17× the first. It rewards being early and it guarantees the throne eventually becomes unaffordable, which is why the 14-day death-and-reset existed. 2. **The prize was pure status.** Nothing was linked, sold or advertised. Your name, on a list, for as long as you could afford it. 3. **It was a single slot.** No grid, no neighbours, no lesser positions — the throne was the whole product. It is dead now, but its rule set — pay more than the last, price compounds, reset on inactivity — is visibly the ancestor of Square Town's Throne, and Square Town's landscape file says exactly that. ## The King of the Internet: the mechanic in isolation, with a $1 step The King of the Internet stripped it further: pay $1 more than the current king, be king, proceeds go to charity. No blockchain, no reset. Its status as of August 2026 is dead — the DNS is gone. The +$1 step is instructive because it is the opposite of King of the Ether Throne's +33 %. Linear escalation keeps the throne cheap and turnover high, which is fun for a week and then becomes a chore: whoever cares most just keeps paying a dollar. Nobody's stake ever becomes *large*, so nobody's loss ever becomes *interesting*. Space (spacefilled.com), a 2026 single-slot billboard, uses the same +$1-per-turn rule for one image and caption; its listed status is "active (slow)". ## 2026: Milliboard turned the throne into a ranked list Milliboard is the current site with the strongest throne energy. You pay any amount; the highest single payment holds #1; anyone can outbid you by 1¢; the board freezes forever when the top payment reaches $1,337,690. It runs a "Daily Throne" and a top-3 hall of fame, and it accepts a name, a logo and a link. What Milliboard changed: the throne stopped being *one* slot. Everyone below #1 still has a rank, so second place is a consolation prize rather than nothing, and the site is a leaderboard rather than a chair. What it gave up: space. There is no grid, no "next to", no neighbourhood — you are a row on a list. Square Town's landscape file calls it "closest in spirit" while noting there is "no per-square ownership, no favicons, no decay" and that it "ends on purpose". [Square Town vs Milliboard](/vs/milliboard) goes through that in detail; the short version is *ranked list vs spatial grid*. ## The Pixel Orbit: the centre of a canvas, held by total spend The Pixel Orbit is a 2026 pixel canvas (pay what you buy, e.g. 5×5 = $2.50) with one twist: the highest total payer holds the exact centre and the whole canvas re-sorts around them. Position is by cumulative spend and can be lost when someone spends more; there is a leaderboard. This is the nearest neighbour to Square Town's Throne, and it's worth being precise about the difference. On The Pixel Orbit, "centre" is a *rank rendered spatially* — spend more in total and everything shuffles so you sit in the middle. On Square Town, the centre is a *fixed 4×4 tile with one owner*: no re-sorting, no cumulative accounting, and everyone else's square stays exactly where they clicked it. There is no per-square eviction or decay on The Pixel Orbit; on Square Town, those apply to every square, and the Throne is simply the square with the biggest starting price. See [Square Town vs The Pixel Orbit](/vs/the-pixel-orbit). ## overwrite.place: a throne for AI agents overwrite.place is a 2026 site where the whole homepage is a single artwork. Agents pay or submit to become the current occupant; when dethroned, an entry shrinks to a small permanent square sized by tenure. Square Town's landscape file describes it as "essentially our Throne as a whole product (for AI agents)". No grid to buy into, no favicons, no links — but the "hold the one big spot, then linger as a small one" idea is a genuinely new take on what happens to the deposed. ## Square Town's Throne: a fixed centre inside a wall that everyone else can buy Square Town's Throne is the 4×4 dead centre of the wall — a single gold tile with a crown, one owner, intro price $100. Anyone can evict the Throne owner by paying double the last price, and every eviction doubles it again: $100 → $200 → $400 → $800 and so on. The ring of cells around the Throne, its "aura", cannot be built on, so the centre stays visually the centre. The eviction is announced in the live feed to every open browser. How that compares with the ancestors, rule by rule: | Rule | King of the Ether Throne (2016) | The King of the Internet | Milliboard | Square Town | |---|---|---|---|---| | Step per takeover | +33 % | +$1 | outbid by 1¢ | ×2 | | Reset / expiry | monarch dies after 14 days | none | freezes at $1,337,690 | none — but the icon fades if unkissed 90 days | | What surrounds the throne | nothing | nothing | ranks #2, #3 … | 1,048,576 ordinary $1 squares, each evictable for double | | What the throne shows | a name | a name | name/logo/link | the holder's favicon, linked | | Payment | ETH | ? | Stripe | Stripe | Doubling is the middle path between +33 % and +$1. It compounds hard enough that the tenth eviction costs $51,200 and the throne stops being a toy quickly — but each individual step is easy to reason about ("double what they paid"), which is the same rule that governs every other square on the wall. There is no separate throne logic to learn; the Throne is just the most expensive square. The [economics of eviction](/blog/economics-of-eviction) covers what that does to prices further out. The other difference is what the throne is *for*. On every predecessor, the throne was the product. On Square Town, the throne sits inside a favicon wall where the real activity is $1 squares, kisses, ring unlocks and click towers — the Throne is the centrepiece, not the whole building. If you want the throne story on its own, [/blog/the-throne-explained](/blog/the-throne-explained) has it; the one-paragraph definition is at [/glossary/the-throne](/glossary/the-throne). ## What the graveyard says about single-slot sites Two of the six sites in the lineage are already dead. The pattern from Square Town's landscape (≈120 dead or dormant pixel/throne sites in total) is blunt: a site that is *only* a throne has nothing to do between takeovers. When nobody is bidding, the page is static, and static pages get forgotten. The 2026 entries that survive attach the throne to something else — a ranked list (Milliboard), a canvas (The Pixel Orbit), an agent economy (overwrite.place), or a wall of $1 squares with a live feed (Square Town). Whether any of them are still around in 2030 is unknown; the honest thing to say is that the throne mechanic is durable and the sites that host it mostly are not. ## FAQ ### What was King of the Ether Throne? A 2016 Ethereum contract and website where you paid the current claim price (starting at 0.5 ETH) to become monarch and have your name listed in a Hall of Monarchs. Each claim raised the price by 33 %, the contract took 2 %, and a monarch not deposed within 14 days "died" and the price reset. It is dead as of August 2026. ### Who invented the pay-to-hold-the-centre mechanic? There is no single inventor; it is a king-of-the-hill auction made public. King of the Ether Throne (2016) is the earliest well-documented web version in Square Town's landscape file, and Square Town's own file calls it the direct ancestor of Square Town's Throne. ### How much does Square Town's Throne cost? $100 to start. Evicting the Throne owner costs double the last price, and every eviction doubles it again: $100, $200, $400, $800 and so on. The Throne is the 4×4 dead centre of the wall, has one owner, and shows their favicon on a gold tile with a crown. ### Is Square Town's Throne the same as Milliboard's #1 rank? No. Milliboard's #1 is the highest single payment on a ranked list, outbid by 1¢, and the board freezes at $1,337,690. Square Town's Throne is a fixed spatial tile in the centre of a favicon wall, taken by paying double, with no freeze. Milliboard is a list; Square Town is a grid. ### How does The Pixel Orbit's centre differ from Square Town's Throne? On The Pixel Orbit the highest cumulative payer holds the exact centre and the entire canvas re-sorts around them. On Square Town the Throne is one fixed 4×4 tile with one owner; every other square stays where its owner clicked it, and every square — not just the centre — can be evicted for double. ### Does the Throne owner get anything besides the centre? The Throne shows the holder's favicon, linked, on a gold tile with a crown, at the one spot on the wall that is always in view; the ring of cells around it can't be built on. Clicks through it are counted like any square. There is no SEO benefit — the wall is a canvas and clicks are redirects. ### Can the Throne be lost without an eviction? It stays owned, but like any icon on Square Town, an icon not kissed for 90 days fades to grayscale. Anyone can kiss it for free to reset the timer. See [/blog/kiss-the-icon-decay-explained](/blog/kiss-the-icon-decay-explained). --- # How to add a favicon to your site in 2026 (and stop being a clown) URL: https://square.pov.town/blog/how-to-add-a-favicon Description: Practical 2026 favicon guide: favicon.ico vs link rel=icon, SVG with dark mode, the sizes that matter, a copy-paste head snippet, and how to verify it. Last updated: 2026-08-18 To add a favicon in 2026 you need two files and three lines in ``: an SVG icon (``), a fallback `favicon.ico` at your site root, and a 180×180 PNG `apple-touch-icon`. Add a `manifest` with 192 and 512 px PNGs if you care about Android home screens. That's the whole modern set. Anything more is optional; anything less and some client somewhere shows a blank square — or, on Square Town ([square.pov.town](/)), a clown. > **TL;DR** — Put `favicon.ico` at `/favicon.ico`, add an SVG icon via ``, add a 180 px `apple-touch-icon.png`, optionally a web manifest with 192/512 px PNGs. Verify with `https://www.google.com/s2/favicons?domain=yoursite.com&sz=64`. If that URL shows a real icon, you're done. If it doesn't, Square Town's Hall of Clowns will notice. ## Why the favicon matters more than its size suggests The favicon shows in every tab, bookmark, history entry, share sheet, and in a lot of places you don't control: search results, link previews, RSS readers, and third-party services that fetch icons by domain. Google's favicon service is one of those, and Square Town uses it as the source for the wall (definition: [/glossary/favicon](/glossary/favicon)): paste your URL, Square Town asks Google for your domain's icon and renders it on your square. No upload. If your site has no favicon there is nothing to render, so you get a clown emoji and a spot in the public Hall of Clowns until you fix it. It's the one line in [how Square Town works](/how-it-works) that people find out about the hard way. ## favicon.ico vs ``: use both `/favicon.ico` is the 1999 convention: browsers request it from the site root without being told. It still works, and some clients (old crawlers, some email apps, some favicon services) *only* look there. Keep it, and make it a real ICO containing 16×16 and 32×32 images (an ICO is a container; a PNG renamed to `.ico` mostly works but isn't the same thing). `` is what modern browsers actually use. It lets you point at any path and any format, including SVG, and declare sizes. Browsers pick the best match from what you list. The order and `type` attributes matter for SVG support detection. | Method | Who reads it | Formats | Notes | |---|---|---|---| | `/favicon.ico` at site root | Every browser as a fallback; many services and crawlers | ICO (multi-size) | Requested automatically; keep it even if you use `` | | `` | Modern browsers (Chrome, Firefox, Edge; Safari support has been partial and version-dependent) | SVG | Crisp at any size, supports dark mode via CSS inside the SVG | | `` PNG | All browsers | PNG | Explicit raster fallback | | `` | iOS/iPadOS home screen, some Android browsers, macOS Safari pinned tabs | PNG 180×180 | No transparency; iOS rounds the corners itself | | Web app manifest `icons` | Android/Chrome install prompt and home screen | PNG 192×192 and 512×512 | Only needed if you want "Add to home screen" to look right | ## The sizes that actually matter in 2026 - **16×16 and 32×32** — tabs and bookmarks on standard and HiDPI screens. Put both in the ICO. - **SVG** — one file, every size, sharp everywhere it's supported. If your logo is a simple shape, this is your primary icon. - **180×180 PNG** — `apple-touch-icon`. Apple devices ignore your SVG and ICO for the home screen. - **192×192 and 512×512 PNG** — manifest icons for Android install and splash screens. You do not need the 2014-era pile of 57, 60, 72, 76, 114, 120, 144, 152 px Apple sizes, Windows tile colours, or `browserconfig.xml`. Those generator packs still exist; ignore them. ## The dark-mode SVG trick Because an SVG favicon is a document, it can contain a ` ``` Two caveats. First, this only affects clients that render SVG icons; the ICO and PNGs don't change, so make sure the raster fallbacks have enough contrast on both light and dark backgrounds (a coloured shape on a transparent background usually works). Second, third-party favicon services, including the one Square Town uses, generally serve a raster of your icon and won't reflect the media query — design so it looks fine either way. ## Copy-paste `` snippet ```html ``` And the manifest, if you want it: ```json { "name": "Your Site", "icons": [ { "src": "/icon-192.png", "type": "image/png", "sizes": "192x192" }, { "src": "/icon-512.png", "type": "image/png", "sizes": "512x512" } ] } ``` Files to ship: `/favicon.ico` (16 + 32), `/icon.svg`, `/apple-touch-icon.png` (180), `/icon-192.png`, `/icon-512.png`. Five files, four lines. Serve them with a long cache lifetime and change the filename when you change the icon. ## Framework one-liners - **Next.js (App Router):** drop `app/icon.png` (or `icon.svg`) and `app/apple-icon.png` in the app directory; Next generates the `` tags. `app/favicon.ico` is also picked up. - **Astro, Vite, SvelteKit, Nuxt, plain static:** put the files in `public/` so they're served from the root; add the `` tags to your layout's ``. - **WordPress:** Appearance → Customize → Site Identity → Site Icon (512×512 PNG). WordPress writes the tags for you. - **Hugo / Jekyll / Eleventy:** files in `static/` (Hugo) or the site root (Jekyll, Eleventy passthrough) plus the tags in your base template. - **Shopify / Squarespace / Wix / Webflow:** each has a "favicon" field in site settings; upload a square PNG or SVG. - **GitHub Pages:** commit `favicon.ico` and friends at the repo root (or `docs/`), add the tags to your HTML. ## How to check your favicon in ten seconds 1. Open `https://yoursite.com/favicon.ico` in a browser. You should see an icon, not a 404 or your homepage. 2. Open `https://www.google.com/s2/favicons?domain=yoursite.com&sz=64`. This is Google's favicon service, the same URL pattern Square Town uses to fetch icons. If it returns your icon at 64 px, every service that relies on it will show you correctly. If it returns a generic globe or nothing, you have work to do or you're waiting on Google's cache. 3. Load your site in a private window and look at the tab. Private windows skip your local favicon cache. 4. Check the browser's DevTools Network tab for a 200 on the icon URLs from your `` tags. ## How Square Town detects missing favicons — and the recheck button When you buy a square, Square Town requests your domain from Google's favicon service at 64 px. Google's service answers 404 for domains it has no real icon for and 200 when it does. 404 means clown: your square shows 🤡, your domain appears in the Hall of Clowns list in the side panel, and the live feed announces it. It's automatic and it's the whole detector. To get out: add a favicon, confirm the Google URL above shows it, then click your square on the wall and press **"I fixed my favicon — recheck"**. Square Town re-asks Google; if the answer changed, your icon appears and the feed announces your escape (🎈). Google's service caches, so if you *just* added the icon and the URL still shows nothing, wait and try again rather than mashing recheck. Read the longer story in [Hall of Clowns: sites without favicons](/blog/hall-of-clowns-sites-without-favicons). ## Common mistakes 1. **Wrong path.** `href="favicon.ico"` (relative) breaks on any page not at the root. Use `/favicon.ico`. 2. **The old icon won't go away.** Browsers cache favicons aggressively and separately from pages. Rename the file (`icon-v2.svg`), or open a private window to confirm the server is right. 3. **Blocked by robots.txt or auth.** If your icon lives behind a login, a Cloudflare challenge, or a `Disallow` rule for crawlers, third-party services can't fetch it. Serve icons publicly and let bots have them. 4. **Redirects.** `www` → apex → `https` chains that end at a 404 for `/favicon.ico` because only the app routes were migrated. Test the final URL. 5. **Wrong content type.** An SVG served as `text/plain` won't render. Check the response header is `image/svg+xml`. 6. **Non-square or padded images.** Icons are square; a wide logo shrunk into 16 px becomes a smear. See [favicon design tips at 16 px](/blog/favicon-design-tips-16px). 7. **PNG renamed to `.ico`.** Usually renders in browsers, sometimes fails in strict tools. Generate a real ICO. 8. **Only setting a Next/Nuxt "head" component on some pages.** Put the icon links in the root layout so they're on every route. ## FAQ ### What is the minimum favicon setup that works everywhere? A multi-size `favicon.ico` at the site root plus an SVG icon via `` and a 180×180 `apple-touch-icon.png`. Add manifest icons (192, 512) if you want a proper Android home-screen icon. ### Do I still need favicon.ico in 2026? Yes, keep it. Modern browsers use ``, but many services, crawlers and older clients still request `/favicon.ico` directly. ### Can a favicon change with dark mode? Yes, if it's an SVG: include a `