Rebuilding Our Own Website: from Plain PHP to a 99/100 PageSpeed Score in a Month
The hardest client is the one you know best. We treated our own website exactly like a client project: with a brief, a schedule, a time budget and quality control at every stage. This case study shows what can be delivered in a month of part-time work when the process is structured and AI does what it's truly good at — and why the new site isn't a "prettier business card" but a client-acquisition machine that maintains itself.
The numbers after launch
PageSpeed Insights
Homepage performance score after launch: LCP 0.7 s, TBT 11 ms, CLS ~0. On mobile, content renders in ~1.4 s.
From brief to production
A complete rebuild — technology, content, two languages, automations — delivered part-time, alongside ongoing client work.
A blog written by AI
Search Console research, an article in Polish and English, consistent illustrations, publication and a LinkedIn post — a full cycle with a QA gate, alerts only on failure.
Two languages from day one
A full English version with complete hreflang — a ready base for international clients from launch.
A website that stopped keeping up with the company
The previous zest.agency was a static one-pager in plain PHP, with no CMS. It was enough for years — until it started to cost us: the services we actually sell (AI creatives, UGC, LinkedIn content) weren't on it, there was no blog or English version, so the site attracted no organic traffic, and every copy change meant editing code. The classic services-company dilemma: your own website always loses the priority battle against client projects — unless you build it the way we approach web design and development for clients: so it maintains itself after launch.
Four pillars of the build
Instead of starting with mockups, we started with content and offer — and chose the technology and automations so the site would work without our daily attention after launch.
Pillar 1: Content-first — copy before pixels
Every service page written from scratch around a specific purchase intent, with real client creatives instead of stock graphics. Content was the project's bottleneck — and deliberately got the most time.
Pillar 2: Technology built for speed — React on the edge
TanStack Start (React) on Cloudflare Workers — the site renders on edge servers close to the user. Deliberately no traditional CMS: content lives in the code repository, and every change ships through commit → review → automatic deploy within minutes.
Pillar 3: AI in the process and on the site
A custom process animation in the hero instead of a showreel, an AI-creatives page with real materials, a blog published automatically twice a week, and a recruitment module with automatic initial application scoring.
Pillar 4: Measurement and compliance from day one
GA4 + GTM with consent mode v2, consent loaded before tags, complete PL/EN hreflang and clean redirects — so the data is trustworthy and indexing is clean from launch.
Before and after
The previous PHP one-pager versus the new site — same company, different league. We also documented the build on our blog.

Numbers, not generalities
| Metric | Result (desktop) |
|---|---|
| Performance score | 99/100 |
| First Contentful Paint | 0.6 s |
| Largest Contentful Paint | 0.7 s |
| Total Blocking Time | 11 ms |
| Cumulative Layout Shift | ~0 |
On mobile, page content renders in ~1.4 s; the synthetic mobile score is lowered by the consent banner, which deliberately blocks the page until the user decides — a conscious choice: measurement completeness over synthetic-test points.
| Area | Result |
|---|---|
| Technology | React (TanStack Start) on Cloudflare Workers, deploys in minutes |
| Content | Service pages with client creatives, blog, case studies — PL and EN |
| Automations | AI blog 2×/week end-to-end, initial recruitment application scoring |
| Measurement | GA4 + GTM + consent mode v2, consent before tags |
| SEO | Complete PL/EN hreflang, clean redirects, automated sitemap |
Three takeaways from our own backyard
- 01
A redesign is a content project, not a graphic one
The code came together quickly; copy, creative selection and the language version took the vast majority of the time. If your plan says "copy: one week", multiply by three.
- 02
Speed is architecture, not a final optimization pass
Edge rendering, media compression and a light frontend are day-one decisions. You can't bolt 99/100 on after launch.
- 03
A site lives as long as its publishing does
A blog that needs a developer to add a post dies within a month. Automation with a QA gate keeps a two-articles-a-week rhythm without involving the team.
Planning a new website or landing page?
We'll build it the way we built our own: content-first, fast from day one, with automations that keep working after launch.
Get a quote
More case studies




