kayjays.de is a Munich dance school website I built and have run since January 2025: information architecture, content, technical setup, publishing and ongoing search work, then a 2026 relaunch and a custom plugin. Three chapters — built, measured, rebuilt on what the measurements said.
The comparison here is like-for-like year over year on a site that did not exist in a measurable form before. It is not a rebuild-uplift claim.
kayjays.de was the first site I built. Tracking was set up as part of learning to build it, which is why there is no 2024 baseline — and it is the honest origin of the build, own and operate framing.
Organic sessions rose 169% year over year on a like-for-like window, and organic moved from 47.6% to 56.6% of all sessions. Engagement on organic traffic held at 70.5%.
Search Console recorded 2,833 clicks over the same period. Growth came from the course architecture and from posts that ranked on style and audience terms — a split that turned out to matter.
GA4 · like-for-like YoY · GSC clicks
Eight course types were modelled as one system rather than eight page templates. Intent, audience, schedule, location and teacher are distinct elements, so a course page can be assembled from them instead of written from scratch.
That decision is what made the 2026 relaunch a re-composition rather than a rewrite.
German is the language of the demand. Style names stay in their original form where searchers use them, and audience and location terms are German throughout — the naming follows the query, not the brand's preference.
Google Search Console · average position
The Search Console export showed the site's largest organic assets were a handful of URLs, and they were not the pages the system was built around.
Google Search Console · pages export
Post content folds into the course page it supports, so the ranking asset and the conversion page are the same URL.
Each style hub carries its audience pages beneath it rather than competing with them.
Terms like kindergeburtstag münchen and the local pack, in place of national style heads that produce out-of-market clicks.
All 15 course pages open their FAQ with the price question, because that is the question being asked.
The redirect map was built from the Search Console Pages export covering 16 months and 166 URLs — not from the sitemap or a crawl, both of which were incomplete.
Published posts were drafted so the 301s can fire cleanly at cutover.
Class times, teachers and ages were hand-written in prose on teacher and course pages and also rendered by the schedule. One Tuesday class moved to 18:30 while the page still said 17:50. A fact sweep across 50 pages also found invented facts on pages written before fact-gathering, including phone hours nobody had confirmed.
Teacher and schedule information lives only in the plugin backend.
No time, teacher or price is hand-written on any page.
Prices render via shortcode from one price record.
Entered once in the plugin backend. Nothing downstream is typed by hand.
Structured data is generated from the display records, so the markup cannot drift from the page.
Built, on staging, launching with the relaunch. It is not described as live until it is.
Studio Classes & Schedule case study (in preparation)Concurrency test, security audit, CI and the deliberately-not-built list are documented there.
52 pre-publish check boxes worked down to zero across 49 pages before cutover. Open questions were collected in one document for the owner rather than sent ad hoc.
Legal gaps found and closed in the audit: no Impressum on the live site, cookie tooling installed but never configured, and privacy text citing only BDSG.
Data-retention and consent rulings made before sign-ups go live: drop-in sign-ups deleted 30 days after class, photo consent moved to a separate opt-in.
Figures come from GA4 and Google Search Console for kayjays.de, on like-for-like windows, with each window stated beside the figure it supports.
The relaunch baseline was captured before cutover in the SEO baseline workbook: GSC site metrics, URL-level data, schema and rich results, an evidence log and an AI-search prompt baseline. Readouts follow at +6 and +12 weeks. Anything not yet measured is marked Pending on this page.
Verification step — confirm no duplicated GA4 tag on live before republishing any KPI: MonsterInsights and Site Kit are both active. Key-event figures are not quoted; the definition changed mid-period.