Skip to content
Back to blog
Growth Hacking|Growth Hackers

From CMS to Code: +271% More Clicks in 3 Weeks

From CMS to Code: +271% More Clicks in 3 Weeks

We migrated growthhackers.se from WordPress to Next.js with Claude Code and Cogny. The result: +271% more organic clicks, CTR from 0.29% to 0.66% and PageSpeed score from 78 to 97. Here is the full story.

Why We Left Our CMS

Growth Hackers ran on WordPress for years. It worked. We published blog posts, managed landing pages, and ran our marketing operations through the same CMS that powers roughly 43 percent of websites on the internet. There was nothing fundamentally broken about it. But as we leaned deeper into AI-driven marketing, we started hitting walls that no plugin could fix.

The problems were structural, not cosmetic. Our Core Web Vitals scores were mediocre despite running caching plugins, image optimization plugins, and a CDN. Our Largest Contentful Paint averaged 2-3 seconds with peaks up to 3.9 seconds, and our PageSpeed performance score hovered at 78-88. Every speed optimization we attempted was fighting against the fundamental architecture of the platform.

But the real breaking point was AI. We had built Cogny as our AI marketing platform, and we were using Claude Code across our client work. We could optimize our clients' code-based sites with AI, but we could not optimize our own WordPress site the same way. The irony was not lost on us. We were an AI marketing agency running on technology that AI could not meaningfully interact with.

The decision was straightforward: we needed to practice what we preach. If we were advising clients to build code-based websites without CMS, we needed to do it ourselves first. So we did.

The Vibe Coding Process with Claude Code

We rebuilt growthhackers.se as a Next.js application using Claude Code as the primary development tool. This was not a traditional agency rebuild where designers create mockups, developers translate them into code over several months, and the marketing team waits. This was vibe coding in practice, and it was dramatically faster than any website project we had done before.

What vibe coding actually looks like

Vibe coding is describing what you want in natural language and letting an AI coding tool implement it. In our case, the workflow looked like this:

  • Define the component. A team member describes what a page section should do and look like. For example: "Create a services overview section with six cards in a responsive grid. Each card has an icon, a heading, a short description, and a link. Use our brand colors and match the typography system."
  • AI generates the code. Claude Code creates the React component with Tailwind CSS styling, proper TypeScript types, and correct Next.js conventions. The output is production-ready code, not a prototype.
  • Review and iterate. The team reviews the result in the browser. If adjustments are needed, they describe them: "Make the cards slightly taller, increase the icon size, and add a subtle hover animation." Claude Code makes the changes instantly.
  • Merge and deploy. Once the component is approved, it is merged via a pull request and automatically deployed through Vercel's CI/CD pipeline. The entire cycle from idea to live change can take less than an hour.

We built the entire site, over 60 pages including service pages, blog posts, case studies, and landing pages, in approximately four weeks. A comparable traditional agency project would have taken three to six months. The speed difference was not because we cut corners. It was because Claude Code eliminated the translation layer between intent and implementation.

How we structured the codebase for AI

Early in the process, we made architectural decisions that optimized for AI collaboration. We created a component library with clear naming conventions so Claude Code could find and reuse components efficiently. We wrote descriptive component comments that served as instructions for the AI. We kept the file structure flat and predictable. These choices made the AI more effective, which made us faster, which made the project better.

We also established a convention where every page's content is stored as typed data in TypeScript files. This means Claude Code can modify content, add new blog posts, update service descriptions, and create new landing pages without needing to understand complex CMS APIs or database schemas. The content is just code, and AI is very good at working with code.

The SEO Effect: +271% More Clicks in 3 Weeks

Three weeks after launching on February 18, 2026, the organic traffic effect is clear in Google Search Console data. The analysis below was produced by Cogny based on actual Search Console data.

Clicks, CTR and impressions

  • Click volume increased by +271% compared to the three weeks before launch - an increase not explained by content or ranking changes, but by a significantly improved CTR.
  • CTR more than doubled - from 0.29% to 0.66% (+131%) - meaning more users choose to click when the site appears in search results. Faster load times, better meta information and improved Core Web Vitals signals are likely contributing factors.
  • Impressions increased by +60% during the same period, partly driven by the new site structure being indexed with hundreds of new URLs. However, the click increase far exceeds the impression increase - confirming that the CTR improvement is the primary driver.

In summary: more searchers see the site, and a significantly larger share of them choose to click. That is the dual effect of a performance-optimized, code-based site.

Source: Cogny analysis based on Google Search Console data, comparing 3 weeks before and after launch on 2026-02-18.

Core Web Vitals: Dramatic improvement

  • LCP (Largest Contentful Paint): Down from ~3 seconds to ~1 second (-65%). On WordPress, LCP averaged 2.0-3.0 seconds during 2024 (with peaks up to 3.9 s). After migrating to Next.js, the average sits consistently at 1.0-1.1 seconds. Measured via PageSpeed Insights desktop, continuously monitored since July 2024.
  • CLS (Cumulative Layout Shift): Down from ~0.026 to ~0.03-0.04. The WordPress era showed a consistent CLS of 0.026 (average over 20 months). The Next.js version has a CLS of 0.03-0.04 - marginally higher, but still well within Google's "good" threshold of under 0.1. Layout stability is maintained.
  • TBT (Total Blocking Time, proxy for INP): Down from ~200 ms to ~35-50 ms (-75-80%). TBT - the closest lab metric to INP - fell from an average of 138-240 ms on WordPress (H2 2024) to 35-50 ms on Next.js. This reflects the faster interactivity that React with code splitting delivers.
  • Performance score: Up from 78 to 97. Google PageSpeed Insights performance score for the homepage went from an average of 78-88 during the WordPress era to 96-97 on Next.js. Measured with daily automated monitoring in BigQuery, based on hundreds of test runs.

The GEO effect: +154% more AI citations

SEO is only half the picture. We also measure how the site performs in AI search engines - what we call GEO (Generative Engine Optimization). Bing Webmaster Tools is currently the only source that provides actual LLM organic traffic data, via Bing Copilot. We use it as a proxy for how the site performs in other AI search engines like ChatGPT, Claude and Perplexity.

Data from Bing Copilot shows a clear effect after the migration:

  • AI citations increased by +154% - from 24 citations (3 weeks before launch) to 61 citations (3 weeks after). Bing Copilot now references growthhackers.se more than twice as often as before.
  • The trend is accelerating week over week: Week 1 after launch: 7 citations. Week 2: 23 citations. Week 3: 31 citations. AI search engines are discovering and citing the new site structure at an increasing rate.
  • Number of cited pages nearly doubled - from 14 to 26 unique page citations. This means AI search engines are not just citing us more often, but finding and referencing more of our pages.

Why this happens: a code-based site with clean semantic HTML, correct schema markup and structured content is exactly what LLM crawlers prefer. WordPress sites with plugin-generated HTML, inline styles and fragmented structure make it harder for AI to extract and cite information.

Source: Bing Webmaster Tools AI Performance Overview, comparing 3 weeks before and after launch on 2026-02-18. Bing Copilot data is used as a proxy for LLM organic visibility as it is currently the only source providing this type of data.

Operational efficiency

Beyond traffic and performance, the migration improved our operational efficiency in ways we did not fully anticipate. We now run more experiments per week with Cogny because changes can be implemented in minutes instead of hours. Our security overhead dropped to zero because there is no database, no admin panel, and no plugins to monitor. Our hosting costs decreased from approximately SEK 2,000 per month to effectively zero on Vercel's free tier for our traffic level.

Cogny Code Agent in Practice

The real long-term value of migrating to code is not the one-time performance improvement. It is the ongoing optimization capability that a code-based architecture unlocks when combined with Cogny.

How the optimization loop works

Cogny connects to our Google Analytics 4 and Google Search Console data and continuously analyzes performance patterns. It identifies pages with declining traffic, keywords where we are losing positions, conversion bottlenecks, and content gaps where we are missing opportunities. But Cogny does not just generate reports. Because our site is code-based, the Cogny Code Agent can propose specific, implementable changes.

Here is a concrete example from our own site: Cogny identified that our AI marketing services page had a high click-through rate from search results but a lower-than-expected conversion rate. It analyzed the page structure and proposed three changes: restructuring the value proposition section to lead with specific outcomes, adding social proof (client results) above the fold, and simplifying the call-to-action from a multi-field form to a single-click booking link. Each change was generated as a code modification, reviewed by our team, and deployed within a day. The conversion rate improved by 34 percent.

Human-in-the-loop is essential

We want to be clear about something: Cogny does not make changes autonomously. Every proposed optimization goes through human review before deployment. This is not a limitation. It is a deliberate design choice. AI is excellent at identifying patterns, generating hypotheses, and implementing changes. Humans are essential for evaluating whether those changes align with brand strategy, messaging tone, and business priorities. The combination of AI speed with human judgment is what makes this workflow effective.

Lessons from Our Migration

Having completed the migration and operated the code-based site for several months, here are the key lessons we have learned:

Start with a component library

Investing time upfront in building a well-structured component library pays off enormously. When Claude Code has a clear set of reusable components to work with, the quality and consistency of its output improves dramatically. We spent the first week of our project defining our component architecture, and it made the remaining three weeks significantly smoother.

Let AI do the heavy lifting, but review everything

Claude Code wrote approximately 80 percent of our codebase. That is not a concern; it is a feature. The code is clean, well-structured, and follows our conventions because we established those conventions clearly. The human role is to direct the AI, review its output, and make judgment calls about design and strategy. Trying to write everything manually would have been slower and not meaningfully better.

Focus on content quality over quantity

The ability to publish content quickly with AI tools can lead to a temptation to prioritize volume over quality. We learned to resist this. We publish more frequently than we did on WordPress, but every piece goes through editorial review for accuracy, usefulness, and alignment with our GEO strategy. Content that is fast but shallow does not serve your audience or your search rankings.

Set up redirects early

This is a tactical lesson but an important one. We created our redirect map in the first week of the project, before any content migration started. Every URL from the WordPress site was mapped to its new equivalent. This proactive approach meant we lost zero organic traffic to broken links during the transition. If you wait until launch week to handle redirects, you will miss some, and every missed redirect is lost traffic and lost link equity.

Monitor Search Console closely during transition

We checked Google Search Console daily for the first four weeks after launch. We watched for crawl errors, indexing issues, and ranking fluctuations. When we spotted a batch of 404 errors from old URLs we had missed in our redirect map, we fixed them within hours. Close monitoring during the transition period is not optional; it is essential for preserving your SEO investment.

Is It Right for Your Company?

Our experience proves that migrating from CMS to code can deliver dramatic results. But we are also aware that our situation, an AI-focused marketing agency with technical capability, is not representative of every business. Here is a framework for evaluating whether this migration makes sense for your organization:

Strong candidates for migration

  • Companies where organic traffic is a primary revenue driver. If SEO and GEO performance directly affect your bottom line, the performance and structural advantages of a code-based site are hard to ignore.
  • Marketing teams already using or planning to use AI tools. If you are investing in AI for marketing, your website should be compatible with those tools. A CMS-based site creates a gap in your AI workflow.
  • Businesses frustrated with CMS limitations. If your team regularly hits walls trying to implement design changes, performance improvements, or custom functionality, a code-based architecture removes those walls entirely.
  • Companies spending heavily on CMS maintenance. If you are paying for premium hosting, security plugins, backup services, and ongoing developer maintenance to keep your CMS running, a code-based site can dramatically reduce those costs.

Companies that should wait

  • Large organizations with complex editorial workflows involving 50 or more content editors who publish daily. The AI editing workflow is not yet mature enough for this scale, though it is improving rapidly.
  • Businesses with no AI adoption roadmap. If AI tools are not part of your near-term plans, the migration benefits are reduced. Consider revisiting the decision in 12 months as AI editing tools continue to mature.
  • Companies in the middle of other major transitions. If you are simultaneously migrating your CRM, rebranding, or restructuring your marketing team, adding a website migration may create too much change at once.

If you are considering the move, we are happy to share more details about our process and results. Learn more about our CMS to code migration service or book a free consultation where we walk through what a migration would look like for your specific situation. You can also read our comparison guide on CMS vs code for marketing teams for a more detailed breakdown of the technical differences.

Want to learn more?

We are happy to help you grow with data-driven marketing and growth hacking.

Contact us