44-Page Dental Template Customisation in 40 Days — White-Label for a US Marketing Agency

Customised a 44-page dental template in 40 days — 10 templates applied across 44 URLs, 290+ QA items reconciled, 22 hours. Shipped to spec.

Industry Healthcare
Engagement White-label · US marketing agency
Delivered 40 calendar days · on schedule
22h across 40 days
irmodentistry.com · desktop
irmodentistry.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

Rebuild the site on a new stack. Implement the spec. Don't improvise. Hand it back ready for cutover.

The Craft of Template Customisation

44 pages of a dental practice mapped onto a 10-template Figma system — 25 service pages, a services lander, a doctor bio, and a Smile Gallery held back until content was ready, all inside a 22-hour estimate. The agency delivered the Figma as contract; we owned the per-page execution and the QA: 290+ tracked SEO and CX items reconciled across the workbook before the agency signed off on cutover.

The value is speed with consistency — but only if the customisation holds the line. The end client never hears our name; the agency does, and it is the agency that fields the call when a page ships wrong. A dev team that “interprets” the Figma, skips QA rounds, or deviates from the template’s design system hands the agency a problem it has to explain in our place — worse than starting from scratch.

Snapshot

Field Value
End-client industry Healthcare — General Dentistry
End-client Irmo Dentistry (Irmo, SC)
Engagement White-label template customisation for a US marketing agency specialising in local-business websites
Project Type WordPress template customisation (agency’s branded template + per-page Figma design on Kinsta)
Scope 44 URLs — 1 homepage, 1 services lander, 25 service pages, 1 doctor bio, 1 about + 4 sub-pages, 1 blog lander, 1 contact, 1 smile gallery (hidden), and 7 supporting pages
Timeline 40 days (6 Aug – 15 Sep 2025), on schedule
Effort 22 hours — development, QA iterations, and project management
Team 4 specialists
Templates 10 reusable templates provided by the agency, all applied across the 44 pages
Tech Stack WordPress · Elementor · Kinsta hosting · Figma-driven per-page design · Site Checker ( QA plugin)
QA discipline 290+ tracked QA items reconciled across the agency’s two issue-backlog tabs (105 SEO + 186 CX) and a 30-item launch checklist
Engagement cadence 104 agency-raised issues · all closed by handoff (20-day active span, 2025-08-14 – 2025-09-02)
Review rounds ≈3 review rounds across the 40-day calendar window
Launch checklist 30 items, signed off before cutover

The Brief

A US marketing agency delivered us a Figma design for Irmo Dentistry and a deployment target on their branded Kinsta-hosted template system. The agency had already done the upstream work: design audit, client approval, hosting setup, content plan. What they needed was a development team that would map the Figma onto the template faithfully, through however many customisation iterations the design required.

The ask was operational. Take the Figma as the source of truth. Customise the template to match it page by page, breakpoint by breakpoint. Raise QA findings back to the agency in the shared workspace; don’t close them without agency sign-off.

What the agency needed to guard against was a dev shop that would treat a 44-page migration as a bulk-copy exercise. The practice already had a live website with an established patient-facing URL surface; moving it to the agency’s branded template system meant preserving every URL, hiding incomplete pages, and sustaining QA discipline across 290+ tracked items — all inside a 22-hour budget.

Risk context. The practice already had a live website with an established patient-facing URL surface. Moving it to the agency’s branded template system meant mapping 44 existing URLs — each with live traffic and search-index history — onto a new template structure without dropping pages, breaking slugs, or leaking incomplete content. With only 22 estimated hours, the risk was not just in the migration itself but in sustaining QA discipline at a lean-hour budget: every URL had to be preserved, the Smile Gallery held back until content was ready, and 291 tracked items across SEO and CX backlogs reconciled before handoff. Several content-dependent sections — the doctor-team bio page, patient testimonials, and the Smile Gallery — shipped with placeholders or were explicitly hidden at launch because the client-facing content assembly had not caught up to the build timeline.

How We Did It

1. Figma-as-contract, template-as-canvas. The Figma file was the design spec. The branded template was the underlying page structure. Our job was to reconcile the two page by page — where the template’s default layout matched the Figma, we kept it; where the Figma required a deviation, we customised. No design decisions originated on our side. We chose template-defaults-first over page-by-page custom build because the 22-hour budget did not allow custom design on every URL — customisation was reserved for pages where the Figma explicitly diverged from the template structure.

2. QA cycle at template-customisation scale. A clean template customisation is not “build once, review once”. It is “build, QA, adjust, QA, adjust”. The agency tracked 290+ items across two issue-backlog tabs (105 SEO findings and 186 CX findings), of which we reconciled the majority through the shared fix loop before handoff. This volume is not a sign of instability; it is the checking that separates a templated site that looks “roughly right” from one that matches the design.

The principle behind this is simple: on a templated build, the QA loop is where the value is delivered. A shorter QA cycle is a weaker match to the design, not a faster delivery.

3. Customisation without drift. Over the course of the project, we documented every change we made to the branded template — whether to a page layout, a section component, or a style token — against the Figma reference. No customisation “leaked” into the template’s shared components, which means this project’s work did not degrade the template for the next site it would serve.

4. Cross-device verification. We QA’d customisations against Chrome, Firefox, Safari, and Edge on desktop, tablet, and mobile viewports — the standard agency breakpoint set. Each QA round covered the pages affected by the round’s design deltas, not the whole site, which is how a templated build stays efficient without losing coverage.

44 URLs across 40 days, with the agency asking the team to move at real-time priority from day 8 onward. Staying inside the 22-hour estimate meant applying template defaults wherever the Figma did not explicitly require a deviation — we reserved customisation effort for the pages where the design diverged rather than spreading it evenly. That ordering is what kept the QA loop at 3 rounds rather than the usual 15.

Operational Integrity at handoff

Internal QA during the build caught two issues before staging handoff: URL-structure inconsistency (half the sitemap URLs were missing trailing slashes — flagged in chat, the call was to standardise on trailing slashes, and we corrected the full 44-URL surface) and a content-language error on the doctor bio page (wrong pronouns from the template placeholder, caught in the CX backlog and fixed pre-handoff). Pre-handoff QA ran through Site Checker — see our QA approach for the categories and the rule that no page ships with an open finding. Post-handoff, the agency’s own review pushed findings into the shared backlog, which our fix loop cleared up to sign-off.

Customisations stayed in the per-client overrides. We did not modify the agency’s shared template components.

Results

Metric Outcome
URLs delivered 44 — 1 homepage, 1 services lander, 25 service pages, 1 doctor bio, 1 about + 4 sub-pages, 1 blog lander, 1 contact, 1 smile gallery (hidden), and 7 supporting pages
Templates applied 10 of 10 reusable templates built and mapped across the 44 pages (Homepage, About Us, Blog Lander, Blog, Doctor Page, Services Lander, Service Page, Default Template, Contact Us, Smile Gallery)
Launch checklist 30 items signed off
QA / SEO + CX issues tracked + resolved 290+ items reconciled across the agency’s two issue-backlog tabs (105 SEO + 186 CX)
Timeline 40 days, delivered on schedule
Effort 22 hours against a 22-hour estimate — no overrun, no scope creep
Team 4 specialists
Hosting handoff Live on the agency’s Kinsta template environment
Page health at handoff 43 / 43 active staging URLs returned HTTP 200 in the sitemap audit; 1 page explicitly hidden

The headline: we implemented the agency’s Figma against their branded template across 44 pages and 10 templates, over 40 calendar days, inside the 22-hour estimate.

Process

Phase Duration Outcome
Brief & estimation ~2 days Figma reviewed, template access confirmed, scope agreed
Customisation development ~3 weeks Page-by-page template customisation to match Figma; existing-site URLs mapped
QA iterations (ongoing) ~3 weeks Agency backlog items reconciled; each closed only on agency sign-off
Fix rounds ~1 week Post-review corrections and hidden-page provisioning
Delivery final day Site live on Kinsta

Development and QA ran concurrently — this is characteristic of template-customisation work, where no “QA phase” closes cleanly. The loop runs continuously until the agency signs off.

Team

Delivery team

  • Nikita Tumasevic — lead developer (template customisation and Figma-to-layout mapping)
  • Pavel Sazhin — QA iterations and backlog reconciliation
  • Anna Polunina — developer support on customisation rounds
  • Anton Hersun, — project lead (estimation, agency-side communication, sign-off)

Agency-side project management, design, and client communication remained with the partner agency throughout. Irmo Dentistry dealt with the agency and never with us — every customisation request arrived through the agency’s shared issue backlog, and the migrated site reached the practice under the agency’s name. We closed each QA round only after the agency-side reviewer confirmed the delta was resolved.

For agencies with a branded template system

A branded template system lives or dies by the boundary between the shared layer and the client layer. For this practice — a single-location dental practice migrating into the template; for others — a multi-location dental group with a shared brand system. Without strict QA discipline, client overrides will get overwritten on the next template update. Content gaps will leak placeholder pages live. Brand tokens will stop propagating the first time the client edits a colour.

Before committing, ask not “can you build a page?” but “how will you scope client overrides to survive template updates?”

Send us the template source or template ID and your brand spec. We will map the client customisation points against the template schema, flag where brand tokens can drift, and 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 →

— Pre-handoff QA gate

Site Checker runs before the agency sees anything.

Before handoff, every staging build runs through Site Checker — the WordPress QA plugin we built and maintain. It is a fail-zero gate: nothing goes to the agency with an open failure. Warnings are reviewed and judged non-blocking; the agency gets a clean slate to run their own QA layer against, not a staging site with known issues in the queue.

Core settings verificationpass
Content & SEO surface auditpass
URL structure integritypass
Content-language sanitizationpass
Menus & widgets auditpass
Original-vs-rebuild content diffpass
Multi-resolution screenshot capturepass

Curious if your engagement fits this pattern?

Scroll to Top