Keyte Group

Keyte Group provides organizational transformation consulting — leadership development, team effectiveness, and change management for companies navigating complex transitions. Principal Beau Keyte came to me as a referral from his IT provider, with a deadline attached: the host had announced it was ending Concrete5 support, which meant the firm's long-running site was going to go down.
Beau's goals were specific: keep his give-backs to the field — publications, teaching materials, resources — online and accessible, and update the site to fit the late stage of his career.
The project was a rescue migration in two stages — first off Concrete5 onto plain HTML and CSS to get the site safe, then an upgrade to Next.js for ease of updating — preserving the existing design throughout and adding analytics and SEO.
The Challenge with the Concrete5 Site
This wasn't a redesign itch; it was a hosting deadline. The host was dropping Concrete5 support, and a site on an unsupported stack doesn't degrade gracefully — it goes offline. The first priority was continuity: get the content out of Concrete5 and onto something with no CMS runtime to lose support for, before the clock ran out.
Once the site was safe as static HTML and CSS, the second stage addressed what the legacy stack had been leaving on the table: technical SEO gaps — missing meta tags, slow loads, poor mobile rendering — that were limiting organic visibility for a firm whose reputation deserved better, and an update path that had required developer involvement for even small changes.
What Was Built
Two-stage migration: First, the site was extracted from Concrete5 into plain HTML and CSS — design intact, content intact, hosting deadline beaten. Then it was rebuilt in Next.js (App Router) with TypeScript throughout, porting the content into clean static components and Markdown files so future updates are simple edits rather than CMS archaeology.
Design preservation: The client's existing design was preserved closely — the visual language, color palette, and layout hierarchy that had been established were maintained. The goal was a modernization, not a rebrand.
Publications showcase: A dedicated section for Beau's articles, papers, and teaching materials — filterable and linkable, so a career's worth of give-backs stays accessible.
GA4 implementation: Google Analytics 4 was set up from scratch with proper event tracking — not just the default page view tag, but conversion events for contact form submissions and key page interactions.
SEO optimization: Meta titles, meta descriptions, Open Graph tags, structured data (schema.org), and canonical URL configuration added across all pages. Search Console was connected and verified.
The Result
A fast, crawlable Next.js site that does what Beau needed: his body of work stays online and findable, the site fits his practice as it is now, and updates are simple file edits. And for the first time, the site generates analytics worth acting on.
This is a representative example of what Next.js development and GA4 implementation look like when applied to a legacy CMS migration.