Case study: Cog Wars — website, SEO and AI search visibility
- Project: cogwarsgame.com, the home of Cog Wars, a free browser twin-stick shooter
- Scope: website design and build, security hardening, technical SEO, AI-search readiness, search-engine registration, reporting
- Timeline: two days, September 2026
- Stack: Python/Flask with Tailwind CSS, frozen to static pages; a small feedback API; Caddy on a VPS; the game itself is a Unity WebGL build
At a glance
| Measure | Before the SEO pass | After |
|---|---|---|
| Pages with structured data | 0 of 68 | 67 of 68 (the game shell is excluded by design) |
| Sitemap: URLs with a last-modified date / image entries | 3 / 0 | 67 of 67 / 112 |
| Thin, near-identical pages open to indexing | 56 | 0 |
| Worst layout shift (CLS) | 0.171 | 0 |
| Lighthouse, five key pages | SEO 100 | Performance 97–99 mobile, 100 desktop; SEO, accessibility, best practices 100 |
| Search engines verified | none | Google, Bing, plus same-day change notification (IndexNow) |
Every number above was measured on the live site, not on a staging copy. That distinction turned out to matter, as you'll see below.
The starting point
Cog Wars needed more than a landing page. The game is an art project as much as a shooter, so the site had to carry the lore, a 56-piece art gallery, a devlog and a way for players to report bugs, while the playable build lived at its own address.
Three constraints shaped everything:
- Facts had to stay true. Game details on the site (weapons, enemies, controls, universes) are generated from the game's own design data, never typed by hand, so the website can't drift out of step with the game.
- No third-party scripts. No analytics, no ad tags, no trackers, and a strict Content Security Policy that blocks any inline script. Many common SEO techniques assume the opposite.
- Honesty about an early build. The game is at version 0.0.1. The site had to sell the vision without claiming features that aren't playable yet.
Building the site
The site is a set of fast, static pages built from templates and data. Images are served as AVIF and WebP in several sizes, fonts are self-hosted, and there is no JavaScript framework to slow the first view.
The feedback form is the only moving part. It runs as a small separate service with proof-of-work spam protection instead of a captcha, strict rate limits, and email delivery with full SPF, DKIM and DMARC alignment. We security-audited it three times, including the server around it. One of those audits found a real bug: a single crafted submission could have jammed the outgoing mail queue for every later message. It was fixed and re-verified on the live service.
Accessibility wasn't an afterthought either. The launch audit found zero automated accessibility violations, and the Lighthouse accessibility score was 100.
What the audit found
A well-built site can still be invisible in search. We audited cogwarsgame.com twice: once ourselves and once with a separate, independent auditor that saw only the live site and the code, not our conclusions. Every finding was re-checked against the live site before it counted. The ones that mattered:
- Search engines had nothing structured to read. No page described the site, the game or the publisher in a machine-readable way.
- The name was taken. Searching "Cog Wars" returned a board game, a tabletop RPG and a major video-game franchise's jargon. Nothing told search engines that this Cog Wars is a browser game.
- The game page looked like an error to Google. Google crawls as a smartphone. The game's loading screen correctly tells phones the game is desktop-only, so a crawler rendering it as a phone would index "Desktop only, for now." as the page's content. We confirmed this by rendering the page exactly as Google's smartphone crawler does.
- An old address still served a full copy of the game, splitting links and signals between two URLs.
- 56 art pages were thin: about 115 words each, mostly shared boilerplate. In 2026 that is exactly the pattern Google's quality and spam updates target.
- The copy promised more than the build delivered, and implied the game ran in any browser when it's desktop-only.
We also found two visual defects in our own work. On screens wider than 1,231 pixels, the last letter of the giant "WARS" title wrapped onto a line of its own. And the art gallery visibly jumped when its web fonts loaded, a layout shift of 0.171, well past Google's 0.1 limit.

Before: on screens wider than 1,231 pixels the title's last letter wrapped onto its own line.

After: two clean lines at every width from 320 to 3,840 pixels.

What Google's smartphone crawler sees on the game page. We kept the honest notice, kept the page out of search, and added a way back to the lore and art.
What we changed
- Structured data on every page: the game, the publisher, the website, articles, artworks and breadcrumbs, written as data blocks that keep the strict security policy intact. We deliberately left out star ratings. Search engines only show them with real reviews, and fabricating them risks a penalty.
- Disambiguation: titles that pair the name with the genre and the word "game", plus an alternate site name, so search engines can tell this Cog Wars apart from the others.
- The game page became a doorway, not a destination for search. It's marked for search engines to skip, while the homepage carries the search intent and links to the game. Phone visitors who reach the game now get a way back to the lore and art instead of a dead end.
- The duplicate address now permanently redirects to the real game page.
- Honest copy everywhere: desktop-only stated plainly, and upcoming features described as coming.
- The 56 thin pages became unique content. Each artwork now carries a first-hand account from the "Observer" inside it, written against the game's own style guide and fact-checked against its lore. The code enforces the rule: a page is only offered to search engines once it has its own writing. Automated tests reject banned clichés and anything that would spoil the game's story.
- A complete, honest sitemap: 67 URLs with real last-modified dates taken from the site's history, plus 112 image entries so the art can surface in image search.
- Both visual defects fixed and measured: the title now fits on two lines at every width from 320 to 3,840 pixels, and the gallery's layout shift dropped from 0.171 to 0. That fix uses fallback fonts sized from the web fonts' own metrics, so the swap moves nothing.
- Search engines told about the site: Google Search Console and Bing Webmaster Tools verified, and the deploy process now notifies Bing and its partner engines about every changed page the same day.

One of the 56 art pages after the rewrite: the artwork, its Observer's account, and links into the game's lore.
Ready for AI search
Search now happens inside AI answers as well as results pages. The site is set up for both:
- The pages are plain HTML, so AI crawlers, most of which don't run JavaScript, see exactly what people see. We verified this by comparing the raw HTML with the rendered page on the key templates (homepage, art pages, articles).
- AI answer crawlers are allowed in the site's crawler rules. The server logs show them fetching pages successfully, which matters because a single network-level setting can block them silently.
- The content is specific, first-hand and sourced, which is what AI answers tend to cite, and the facts about the game are consistent everywhere they appear.
How we know it works
Nothing on this project was marked done on our own word. Our checks had to prove they could fail before a passing result counted. In one case, a browser check "passed" only because the browser never started; we caught that and fixed the check.
Every fix was re-measured on the live site, and the numbers in the table above are live measurements. Along the way we also caught our own mistakes. One was a blank date on the homepage that a test had missed because it only checked a different page. Another was a performance comparison that would have been misleading: a local preview scored 86, while the real, compressed site scores 97.
The site ships with 137 automated tests, and it launched with Google, Bing and AI crawlers already fetching its pages.
What this doesn't claim
Rankings take weeks to form, and the site is days old in search indexes, so this case study reports what was measured, not traffic or rankings. We'll update it with those figures as they come in.
What this means for your product or business
The same process now runs as a repeatable service, with its own toolkit and playbooks:
- Websites and web apps built properly from the start: fast, accessible, secure, and honest about what they offer.
- Search and AI-visibility audits for any site or web app. A polite crawl, a check of what Google and AI crawlers actually see (including JavaScript-heavy apps), server-log analysis, AI answer checks across the major engines, and an independent second audit. The result is a prioritized report you can act on, where every finding comes with its evidence.
- Implementation: we can fix what we find, not just list it, working through your code, CMS or hosting with backups and tests, or hand your developers exact changes.
- Local search for service businesses: the Google Business Profile, reviews, listings and service pages, done within Google's rules and the FTC's review rules.
Wherever we can, we measure, we verify independently, and we say plainly what we can't promise. No one can guarantee a #1 ranking, and Google says so itself. What we can promise is that every recommendation is backed by evidence, and every fix is proven on the live site.
Interested in something similar for your product or business? A contact page is on its way. In the meantime, you can see the result at cogwarsgame.com and read about the launch in our Cog Wars post.