With seven language versions live, the next step for hangmango was to actually try to rank for something. That meant a proper SEO push — done in three phases over two days.
- Phase 1 was the technical groundwork. Cloudflare deploys to a pages.dev subdomain by default, which creates a duplicate of the live site that Google can index — bad for SEO. That got blocked via a noindex header. The sitemap was rebuilt with hreflang annotations so Google knows which language version is which. The JSON-LD structured data got upgraded to include VideoGame schema alongside WebApplication. Also added llms.txt, which is a relatively new convention for telling AI systems what a site is about.
- One thing that bit us: adding width and height attributes to the panel images for performance reasons broke the win/lose modal layout across all seven language pages. The HTML dimensions conflicted with how CSS was already handling the sizing and pushed the buttons off screen. That needed finding and fixing across all seven files.
- Phase 2 was content. Two new page types were created for each language — a For Teachers page and a Hangman Alternative page — 14 pages in total. These target specific searches ("hangman game for classroom", "hangman alternative for kids") that are a better fit than just competing on "hangman" directly.
- Phase 3 was the biggest in terms of page count: 61 category landing pages, one per word category per language. Each page shows the full word list for that category as visible HTML. The point is to capture searches like "animals hangman words" or "food category word game" — the kind of thing people actually type when they're looking for word game content.
- An embed system also went in as part of Phase 3 — a stripped-down version of the game that can be dropped into other sites via an iframe, plus a page with the copy-paste snippet. That came out of the For Teachers work: if you're going to point teachers at the game, giving them something they can embed in a school website isn't a huge extra step.
- The sitemap went from 8 URLs to 91 across all of this. Whether any of it actually works is a question for another day.