Dental Template Customisation — 39 Days, 40h, Staged Release in Joplin MO

19 pages from an 84-URL dental sitemap, customised across 7 templates in Joplin MO — delivered in 39 days and 40 hours with 45+ QA findings resolved.

Industry Healthcare
Engagement White-label · US marketing agency
Delivered 39 calendar days · on schedule
40h across 39 days
northside-dentistry.com · desktop
northside-dentistry.com · mobile
Screenshot unavailable
Mobile view

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

19 pages from an 84-URL dental sitemap customised against the agency’s “Glowing” template on Kinsta, with a Figma-specified Adobe Typekit font (EB Garamond) that had no integration in the brief — resolved in the first week before any page customisation began. The remaining 65 URLs on the sitemap stay buildable on the same foundations because every change in the pre-release set lives inside the per-client override layer, with no modifications to the agency’s shared template components.

Snapshot

Field Value
End-client industry Healthcare — General Dentistry
End-client Northside Family Dentistry (Joplin, MO)
Engagement White-label template customisation for a US marketing agency specialising in local-business websites
Project Type WordPress template customisation (agency’s branded “Glowing” dental template + per-page Figma design on Kinsta)
Scope Pre-release set — homepage, about, services lander, 8 service category pages, doctor bio, contact, patient-information hub, areas-we-serve lander; drawn from a 84-URL full-build sitemap
Timeline 39 days (19 Dec 2025 – 27 Jan 2026), on schedule
Effort 40 hours — development, QA iterations, and project management
Team 4 specialists
Templates 7 reusable templates applied across the pre-release page set: Homepage, About Us, Services Lander, Service Page, Default Template, Contact Us, Area We Serve
Tech Stack WordPress · Elementor · Kinsta hosting · Figma-driven per-page design · Adobe Typekit font integration · agency AutoQA (Phone-Number / Links / Email / Content AI / visual checks) · Site Checker ( QA plugin)
QA discipline 45+ tracked agency QA findings logged in the shared backlog across an 78-item launch checklist
Engagement cadence 3 agency-raised issues · 1 of 3 closed by handoff
Review rounds ≈5 review rounds across the 39-day calendar window
Launch checklist 78 items, signed off before cutover

The Brief

A US marketing agency handed us a Figma design for Northside Family Dentistry — a single-doctor general practice in Joplin, Missouri — together with deployment rights on their branded Kinsta-hosted dental template. The agency had already completed the upstream work: client discovery, design sign-off, content plan, hosting configuration, and a 84-URL sitemap that mapped the practice’s full intended web presence. What the agency needed from us was the customisation work to get the pre-release set live while respecting the structure of a site that was deliberately built for expansion.

The ask had two parts. First: take the agency’s Figma and the “Glowing” dental template and reconcile the two, page by page, for the subset of pages the agency and client had marked for the initial release. Second: do it without contaminating the template in a way that would create rework when the remaining 65 pages were added later. The pre-release set is not a simpler project than a full build — it is a full build’s discipline applied to a smaller footprint, with the added constraint that everything left out of scope has to remain buildable on the same foundations.

What the agency was hedging against was a dev shop that treats a partial scope as an invitation to take shortcuts. A dental template in active use across multiple practices carries shared components — headers, footers, navigation patterns, button styles — that power every site it serves. A dev team that modifies shared components to satisfy one project’s Figma deviation poisons those components for every other practice running on the same template. On a staged build, the risk compounds: shortcuts that look invisible in the pre-release set will surface as merge conflicts and design regressions when phase two begins. What the agency hired for was scope-respecting customisation — per-client overrides, Figma-matched, zero component bleed.

Risk context. A staged release on an 84-URL taxonomy is not a smaller project — it is a full project’s discipline applied to a partial footprint, with the added constraint that every decision made in phase one either preserves or forecloses phase two. A dev team that touches shared template components to satisfy a phase-one Figma deviation poisons the foundations for the remaining 65 pages before they are even scoped. The shortcuts are invisible in the pre-release set; they surface as merge conflicts and design regressions the moment phase two begins. The agency hired us to keep phase-one customisations entirely within per-client overrides so that the expansion is still buildable from clean foundations.

How We Did It

1. Figma-as-contract, template-as-canvas. The Figma file was the design specification. The “Glowing” dental template was the page framework. For each page in the pre-release scope, we compared the Figma against the template’s default output and customised only where they diverged — keeping every change inside the per-client override layer and nothing in the shared template. No design decisions originated on our side. Where the Figma specified layout elements not directly supported by the template’s existing component set — such as custom hero section structures — we chose clean Elementor markup over template-based or ACF-field approaches, so the customisation remained inside the per-client override layer without altering the agency’s shared template patterns.

2. Font and asset resolution up front. The Figma design used a licensed Adobe Typekit font (EB Garamond) that was not bundled in the template’s default setup. Before customisation began, we resolved the font embed — requesting the Typekit CSS snippet from the agency and confirming the full font weight range the design required was accessible. Starting customisation before the font was confirmed would have pushed a visual discrepancy through every subsequent QA round. Resolving it in the first days compressed the iteration loop.

3. 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 45+ individual QA findings in the shared backlog — granular issues ranging from linked buttons and layout alignment to meta-title accuracy and mobile responsiveness — each one a discrete item that required a fix, a return to staging, and a fresh agency sign-off before it closed. Behind those 45 items were 40 QA iteration sub-tasks tracked in Redmine. The volume is the record of precision, not instability.

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.

4. Customisation without drift. We contained every deviation from the template default — page layouts, section components, style tokens, font embeds, button variants — inside the per-client override layer. We did not modify the agency’s shared “Glowing” template components. The pre-release site and the phase-two expansion pages will share the same template foundations because no shortcut in phase one compromised them.

5. Cross-device verification. We QA’d customisations on desktop, tablet, and mobile viewports. We caught and resolved mobile-specific issues — including a button layout regression on narrow screens that required a targeted CSS fix — during the QA loop before handoff. Each QA round covered the pages affected by that round’s deltas, not the full site, which is how a staged build stays efficient without losing coverage.

The font had to be confirmed first. The Adobe Typekit embed was missing from both the Figma and the brief — resolving it in the first days meant every subsequent QA round was reviewing the actual design, not a visual stand-in. With the foundation confirmed, 40 QA rounds across 39 days closed each delta cleanly against the “Glowing” template’s override layer without touching shared components.

Operational Integrity at handoff

We built hero sections without ACF template fields — we made the call in the first development days to keep per-client overrides isolated from the agency’s shared “Glowing” template components. We caught and resolved a mobile button regression on narrow screens in the final QA round before handoff. Pre-handoff QA ran through Site Checker — see our QA approach for the categories and the rule that nothing ships with an open finding. After we handed off, the agency ran its own QA and we resolved each item it raised before sign-off.

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

Results

Metric Outcome
Pre-release pages delivered Homepage, About, Services Lander, 8 service category pages, Doctor bio, Contact, patient-info hub (financing, insurance, membership, new-patient forms, veteran discounts), areas-we-serve lander
Templates applied 7 of 15 dental templates in the agency’s library applied to the pre-release scope (phase two will add the remaining 8 as the page count scales)
Full-build sitemap 84 URLs planned across the practice’s complete service taxonomy — customisation foundations left clean for expansion
Launch checklist 78 items — 78 signed off at point of export
QA backlog findings 45+ individual agency findings logged and resolved; 40 QA iteration sub-tasks tracked in Redmine
Timeline 39 days (19 Dec 2025 – 27 Jan 2026), delivered on schedule
Effort 40 hours — no overrun, no scope creep
Team 4 specialists
Hosting handoff Live on the agency’s Kinsta template environment
Page health at handoff Staging pages returned HTTP 200 across the pre-release scope

In short: we implemented the agency’s Figma against the “Glowing” dental template for the pre-release page set, over 39 calendar days, inside the 40-hour estimate — with the 65-page phase-two expansion still buildable from the same clean foundations.

Process

Phase Duration Outcome
Brief & estimation ~3 days Figma reviewed, template access confirmed, scope (pre-release vs full sitemap) agreed
Asset resolution first week Adobe Typekit font embed confirmed and integrated before customisation began
Customisation development ~3 weeks Page-by-page template customisation to match Figma for the pre-release set
QA iterations (concurrent) ~3 weeks 40 Redmine QA rounds + 45 agency backlog findings logged; each item closed only on agency sign-off
Delivery final day Pre-release 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

  • Natalia Bogatel — lead developer (template customisation and Figma-to-layout mapping)
  • Timur Arbaev — QA and developer support across customisation rounds
  • Pavel Sazhin — QA iterations and project communication
  • Anton Hersun, — project lead (estimation, agency-side communication, sign-off)

The agency managed the end-client relationship, the Figma design, the content plan, and the hosting environment. The practice in Joplin knew the agency as its web partner and never had reason to learn who customised the templates — requests arrived through the shared backlog, and each iteration closed only when the agency-side reviewer confirmed the fix was resolved to spec.

For agencies with a branded template system

A branded template system delivers speed and consistency only when the boundary between shared components and client-specific overrides stays intact. For a single-location dental practice, each site is a standalone build; for a multi-location network, a leaking override cascades across every office. The concrete risks: child-theme overrides break when the template vendor updates the base theme. Custom field definitions drift out of sync with the template author’s schema. Brand colours stop cascading correctly the first time the client makes an edit in the customizer.

The question to ask a dev partner before committing is not “can you build the pages?” — it is “how exactly will you scope each override so the shared template layer stays untouched?”

Send us the template source or template ID and your brand spec. We will review the template against your customization needs, identify where overrides could leak, and return a fixed-hours quote.

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