21-Page Eye Care WordPress Build in 59 Days — White-Label Delivery for a US Marketing Agency

A 21-page eye care build with AI-written content replacing the original — 5 templates, 34 backlog items closed, 46-item checklist, 60 hours in 59 days.

End client Karan's Vision Center
Sector Healthcare
Engagement White-label delivery for a US marketing agency specialising in local-business websites
Timeline 59 calendar days
60h across 59 days
karnsvision.com · desktop
karnsvision.com · mobile

Screenshots captured by automated tooling — some elements may not have loaded fully or may layer on top of each other. For the most accurate view, visit the live site →

— The brief

Build the URLs across the agency's templates, wire the conversion primitive, then work the QA backlogs to closure.

The Craft of a Build

21 pages of an Eye Care WordPress build across five branded templates — AI-written content that replaced the original copy in full, and a designer’s brief requiring a subpage layout that read as a fresh design, not a visual copy. Built on WP Engine in 60 hours over 59 days, with all 34 agency backlog items closed before handoff.

The risk the agency is hedging against is a dev shop that builds accurate pages but leaves the migration half-done: URL slugs that quietly changed, internal links pointing to the staging domain, NAP-adjacent contact data (practice name, address, phone number) that is inconsistently worded across pages. In the Eye Care vertical, where patients find their optometrist primarily through local search, those silent mismatches are not cosmetic — they erode the practice’s search visibility without any visible build error to point to.

The build itself: an Eye Care WordPress site on WP Engine and the agency’s branded template system, with AI-written content replacing the original, delivered inside the hour estimate.

Snapshot

Field Value
End-client industry Healthcare — Eye Care / Optometry
End-client Karan’s Vision Center (independent optometry practice)
Engagement White-label WordPress build for a US marketing agency specialising in local-business websites
Project Type Website Build (content replacement on existing URL surface, WP Engine, agency template system)
Scope 21 URLs — homepage, about (our practice), doctor pages, services lander, 11 service pages, brands pages, technology, location, legal pages
Timeline 59 days (26 Feb – 26 Apr 2025), on schedule
Effort 60 hours
Team 4 specialists
Templates 5 templates from the agency’s standard library applied across the 21 pages (Service Page, Homepage, About Us, Default Template, Brands)
Tech Stack WordPress · Elementor · WP Engine hosting · AI-written content · Rank Math · Site Checker ( QA plugin)
QA discipline 34 backlog items closed (100%) across the agency’s single issue-backlog tab and a 46-item launch checklist
Engagement cadence 34 agency-raised issues · all closed by handoff (21-day active span, 2025-03-20 – 2025-04-09)
Review rounds ≈2 review rounds across the 59-day calendar window
Launch checklist 46 items, signed off before cutover

The Brief

A US marketing agency was rebuilding Karan’s Vision Center — an independent optometry practice — on their branded WP Engine template system. The site’s existing URL surface would be preserved; the content would be replaced with a new AI-written set. The agency delivered us the site structure and work tracker, a Google Sheet with the new content per page, staging credentials on WP Engine, and a designer’s notes document with visual adjustments to make the new build distinct from the original layout. Our work was to build out each page, implement the design changes, and deliver a site the agency could take through their QA checklist and hand off to the client.

The agency’s brief included an explicit note about layout differentiation: the subpage layout needed to be different enough from the original practice website that it could not be considered a direct copy. That constraint ran alongside the content-replacement work — we were building new pages, not migrating old ones, and the template had to read as a fresh design against the same URL structure.

The risk framing for an Eye Care build maps to local-search continuity. An optometry practice’s acquisition channel is almost entirely local search — “eye doctor near me” or “Karan’s Vision Center” queries resolve to specific URL slugs and trust the contact data on those pages to match the Google Business Profile. A build that silently changes /service/dry-eye-therapy/ to /services/dry-eye/ breaks a URL the practice’s audience relies on. A build that puts the wrong phone number on two out of eleven service pages creates inconsistent NAP data that local-search algorithms treat as a signal problem. Our pre-handoff QA pass — specifically core settings verification, URL structure audit, and content-language sanitization — existed precisely to close those gaps before the agency’s own QA ran.

Risk context. For an independent optometry practice whose acquisition channel is almost entirely local search, the build risk is not visual — it is silent data corruption: a slug that quietly changes, a phone number that is inconsistently worded across eleven service pages, a canonical setting that points to staging instead of production. None of these surface as visible errors in a browser review, and all of them erode the practice’s local-search presence after launch without a single broken-page indicator to trace.

How We Did It

1. Templates and pages — rebuilding the URL surface. We built 21 pages across 5 templates: Service Page applied eleven times across the optometry vertical’s standard service taxonomy (adult/senior eye exams, children’s eye exams, contact lenses, diabetic eye exams, dry eye therapy, emergency eye care, eye disease diagnosis, laser surgery consultation, myopia control, neurolens, optilight), plus Homepage, About Us, Brands, and Default Template pages. The service taxonomy follows the standard Eye Care vertical set — the same categories patients search for across independent optometry practices.

2. New content, new design — same URL surface. The content on each page was new: AI-written copy delivered by the agency, loaded per-page into the template against the existing URL slugs. Alongside the content replacement, the designer’s notes specified visual adjustments to differentiate the new build from the original layout — changes to subpage structure, hero and section layouts, imagery treatment — applied to ensure the site read as a fresh design rather than a visual copy of the outgoing site. Both operations ran on the same pages at the same time; keeping content accuracy and design fidelity in sync was the dev-side coordination challenge.

3. Fix-and-feedback loop until sign-off. After the initial build, the agency opened rounds of client and reviewer feedback through their shared backlog. Each round covered a mix of content accuracy (doctor photos, contact data, review-widget behaviour), layout and spacing adjustments, and page-level design refinements. 34 backlog items closed at 100% completion — every tracked item was resolved before handoff. The issue cadence reflected how this agency operates: individual change-log entries in their Google Sheet tracker, reviewed by their account manager, returned to us for implementation, and confirmed by their reviewers before closing. On pages where the client requested display-copy changes to location phrasing — the repeated “in Knoxville” in service-page titles — we kept the H1 element with the full location-inclusive title for local-search continuity and moved the visible copy to a subheading, rather than removing keyword-bearing content from the page.

4. Pre-handoff verification against the local-search surface. Before handing off, we ran our Site Checker pre-handoff QA pass — core settings, content and SEO surface (meta titles, slugs, canonical settings), URL structure, content-language sanitization across pages and menus, and multi-resolution screenshots. For an Eye Care practice, the categories that matter most for local-search continuity are exactly those: slug consistency, NAP-adjacent copy accuracy (practice name format, address, phone number), and canonical correctness. That sweep let us hand over a build we already knew was clean, well ahead of whatever the agency would run on their side.

The layout differentiation constraint ran directly against the local-search H1 preservation requirement. Making the subpage design distinct enough to avoid copying the outgoing vendor’s work meant structural changes to every page; keeping “Dry Eye Therapy in Knoxville” as the H1 — not the visually cleaner truncated form the design suggested — meant not touching the element the local-search ranking depended on. Both conditions had to hold on the same pages at the same time.

Operational Integrity at handoff

Pre-handoff QA confirmed URL structure and H1 preservation across all 11 service pages — including the location-bearing “Dry Eye Therapy in Knoxville” H1 retained for local-search continuity — and caught a broken internal link on /our-technology/ pointing to a non-existent /digital-eye-strain/ slug, which we resolved before the agency saw the build. We routed the pre-handoff sweep through Site Checker. Our QA approach lists the categories and the rule that no build leaves with an unresolved finding. Once the agency had the site, they verified it on their own stack, logging changes into the shared backlog. We worked that fix loop to zero before they closed it.

Results

Metric Outcome
URLs built 21 — 1 homepage, 1 about/our-practice, 11 service pages across the optometry vertical’s standard taxonomy, 2 brands pages, 1 technology page, 1 location page, 4 legal / utility pages
Templates applied 5 of 5 templates from the agency’s standard library (Service Page ×11, Default Template ×6, Brands ×2, Homepage ×1, About Us ×1)
Issues backlog 34 / 34 items closed (100% completion)
Launch checklist 46 items across Design / Functionality / SEO / Responsive / DNS categories
Timeline 59 days, delivered on schedule
Effort 60 hours
Team 4 specialists
Hosting handoff Built and delivered on WP Engine staging, migrated to production domain
Production status Site live at karnsvision.com — verified 200 OK at the time of this case-study draft

Bottom line: 21 pages built across 5 templates, AI-written content loaded, layout differentiated from the original site, 34 backlog items resolved, 46 launch-checklist items signed off — in 59 days, inside 60 hours.

Process

Phase Duration Outcome
Brief & estimation ~1 week Site structure reviewed, staging access confirmed, scope agreed (Feb 26 – Mar 3)
Build phase ~3 weeks 21-page build with new content and design adjustments (Mar 3 – Mar 24)
QA and fix rounds ~4 weeks Designer notes, client edits, layout revisions; 34 backlog items worked to 100% (Mar 24 – Apr 9)
Post-launch review ~2 weeks One post-launch change addressed; backlog issues report reviewed and closed (Apr 9 – Apr 26)

Team

Delivery team

  • Nikita Tumasevic — lead developer (build, content loading, design adjustments)
  • Vladimir Kozlov — developer (subpage layout, content implementation, design changes)
  • Lyudmila Travkina / Pavel Sazhin — QA review and sign-off passes
  • Anton Hersun, — project lead (estimation, agency-side communication, sign-off)

Project management, the line to the client, and final say on design all stayed with the partner agency for the duration. From the practice’s side, the whole engagement was the agency — our names never crossed into that conversation. Every change request reached us through the agency’s shared change-log tracker, and nothing advanced to the next stage until their reviewer had cleared the prior one.

For agencies commissioning a white-label WordPress build

On an optometry practice site built for local search, the rankings live in the schema markup. They live in the directory citations and the URL architecture — not just the visual design. For this practice — a single-location independent optometry whose lead pipeline depends on a clean NAP footprint and a single Google Map listing. For others — a multi-location eye-care group reconciling its brand system across dozens of local directory profiles. The failures that get the commissioning agency in trouble are the quiet ones. Phone formatting shifts across service pages, breaking the structured data the agency tracks for Local Pack. Schema stripped on import makes rich results vanish from the tracking dashboards. The form integration fails silently, and lead data stops flowing without a visible error.

The question to ask a dev partner is not “can you build the pages?” — it is “how exactly will you structure the taxonomy so the agency’s local-search wins survive the launch?”

Send us a current build workbook, a draft sitemap, or your design files. We will walk the URL plan against the local-search data model. We will flag the spots where the next service line breaks the architecture or schema silently shifts. Then we return a fixed-hours quote. Free review, fixed quote in hours.

Request a spec review →

Don't have a spec yet? Send a one-paragraph description — we'll come back with the questions worth asking. Send a description →

Curious if your engagement fits this pattern?

Scroll to Top