Skip to main content
Case study

Athena Chess

YEAR
2026
ROLE
Solo — SEO, web, brand, content
STACK
Local SEO · Next.js · Schema / AEO · Brand system · GSAP

Athena Chess (CLB Cờ Vua Athena) is the leading children's chess academy in Đà Nẵng — five branches, 5,000+ students since 2018, 30+ tournaments hosted, and coaches who are 100% FIDE-certified. They had the reputation and the results. What they didn't have was a digital presence that matched. I built it: the website, the local SEO, the brand system, and the content — end to end.

The brief, in one line

A local business that's genuinely the best in its city should be the first thing a parent finds when they search "dạy cờ vua Đà Nẵng." Athena wasn't. The job was to close that gap — turn a real-world leader into a search-and-AI leader too.

Local SEO was the whole game

For a business with five physical branches, local search is the channel. So most of the work lived there:

  • A 130-keyword roadmap (Semrush, VN), filtered down and grouped into six clusters — transactional, hyper-local Đà Nẵng terms, kids-focused, content pillars, tournaments, and decision-stage queries. The bullseye terms — "clb cờ vua," "dạy cờ vua đà nẵng" — sit at competition 0.03–0.09. Winnable, and nobody local was targeting them properly.
  • Multi-location done right: real per-district pages (/co-so/hoa-cuong, hoa-xuan, hoa-khanh) with their own content, map, and FAQ — not five addresses dumped on one page, and not thin doorway clones.
  • SportsActivityLocation schema with street-level geo coordinates, opening hours, and phone per branch, plus a consolidated NAP across the whole site — the structured data that earns map-pack and rich results.
  • A Google Business Profile playbook for all five locations (the off-site half that's now the client's to execute).

Built for AI search, not just Google

The site is a static-rendered Next.js build, so every crawler — including the AI ones — gets the full HTML. I shipped a 12-article content core on a pillar-and-spoke model (the "luật cờ vua" cluster alone addresses ~2,400 monthly searches at competition 0.04), each piece with an author byline, dates, FIDE citations, and FAQ blocks. Add robots.txt and llms.txt that welcome GPTBot, ClaudeBot, and PerplexityBot, FAQ and Course and Article schema throughout, and the on-page GEO readiness lands around 80/100. Core Web Vitals came in strong — LCP ~2.8s, CLS near zero.

The brand, made buildable

Athena's identity is classical — a Greek-goddess namesake — so the design system leans into it without getting cold: a warm gold (#FEC33A) against a signature magenta-to-purple-to-indigo gradient, Be Vietnam Pro for full Vietnamese support, and restrained Hellenic motifs. I documented the whole thing — color tokens, a component library, and a mobile-first GSAP motion system (a drawn-on program path, a count-up ELO leaderboard, scroll reveals) with a hard rule that it all degrades gracefully on touch and under reduced-motion. And the photo library — nearly 6,000 raw event images — got deduplicated and optimized to WebP at a 97% size cut to feed the gallery without bloating the page.

Where it stands

The foundation is live at athenachess.vn: the site, the schema, the content, the brand. The remaining levers — claiming the five Business Profiles, gathering parent reviews, the first videos — are deliberately the client's to pull, because that's where local authority actually compounds. Athena was already the best chess academy in Đà Nẵng. Now the search results have a chance to say so.