21-Page Dental WordPress Build in 31 Days — White-Label Delivery for a US Marketing Agency

A 21-page dental WordPress build delivered in 31 days — 13 templates, Figma-to-Elementor translation, 40-item SEO backlog closed, 29-item checklist, 50h.

End client Songbird Dental Studio
Sector Healthcare
Engagement White-label delivery for a US marketing agency specialising in local-business websites
Timeline 31 calendar days
50h across 31 days
songbirddentalstudio.com · desktop
songbirddentalstudio.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 a dental-practice WordPress build, translated from Figma designs to Elementor through a workbook sitemap whose every row carried its own hour estimate. The scaffold rose before all the content was in — leaving no gap for a less cautious dev partner to collapse the sitemap — and a content-integration tail plus a two-track QA close followed inside 50 hours across 31 days.

Snapshot

Field Value
End-client industry Healthcare — General Dental
End-client Songbird Dental Studio (Crawfordville, FL)
Engagement White-label WordPress build for a US marketing agency specialising in local-business websites
Project Type WordPress build with Elementor on WP Engine, translating from Figma designs
Scope 21 URLs — homepage, about us, doctor page, blog lander + blog, contact us, services lander, 8 service pages, smile gallery, new patient page, dental technology page, thank-you page, 404 page
Timeline 31 days (26 Mar – 26 Apr 2025), delivered on schedule
Effort 50 hours against a 50-hour estimate — no overrun
Team 5 specialists (dev-heavy distribution appropriate for a Figma-to-Elementor build with content-integration tail)
Templates 13 reusable templates — the agency’s standard dental template library
Tech Stack WordPress · Elementor · Gravity Forms · WP Engine · Rank Math · WP Rocket · Site Checker ( QA plugin)
Delivered 21 URLs built across 13 templates, 48-item SEO backlog worked to 40 Completed, 20-item AM Issues Backlog worked to 19 Completed, 29-item checklist closed
Engagement cadence 47 agency-raised issues · 46 of 47 closed by handoff (57-day active span, 2025-04-09 – 2025-06-04)
Review rounds ≈8 review rounds across the 31-day calendar window
Launch checklist 29 items, signed off before cutover

The Brief

A US marketing agency retained by Songbird Dental Studio — a general-dental practice in Crawfordville, Florida — handed us a Google Sheets workbook with a full sitemap, Figma designs for homepage and internal pages, a templates catalogue, a launch checklist, and pre-populated SEO and Account Manager issues backlogs. Everything was assembled inside the agency’s WP Engine hosting, with Elementor as the layout tool and Gravity Forms handling the contact and new-patient enquiries.

The ask: build all 21 pages against the agency’s template library, translate the Figma designs into Elementor layouts, integrate the content as it arrived from the client, wire the forms, and work through both QA backlogs until the agency accepted the site. The agency held on to the design direction, the copy, the SEO plan, and every line of contact with the practice.

Risk Context — A new practice build with incomplete content at kickoff carries a specific risk: the dev partner may simplify the URL architecture to match the thin content, or leave placeholder copy in pages that the agency assumes will be flagged. What the agency wanted was a build that stood up all 21 URLs to the letter of the sitemap — each service page, each template assignment, each form destination — and parked any missing copy as a blocked item waiting on the agency rather than a reason to thin the site down. With the per-row hours we’d scoped as the binding number, the work was to hit those rows without letting the scaffold cave in around the empty pages. Agency-supplied imagery arrived as uncompressed JPGs (200–500 KB each), requiring manual batch conversion to WEBP and re-upload across all pages before the performance checklist could close.

How We Did It

1. Thirteen templates, 21 pages, one pipeline — built from Figma source design. The site’s 21 pages spread across the agency’s standard template library: Homepage (1), About Us (2 — practice page + doctor bio), Blog Lander (1), Blog (1), Contact Us (1), Services Lander (1), Service Page (8 — teeth whitening, sedation dentistry, dental implants, checkups, veneers, extractions, dentures, cosmetic dentistry, general dentistry, restorative dentistry), Smile Gallery (1), New Patient (1), Technology (1), and Default Template (2 — thank-you page + 404). Before anyone opened Elementor, we’d already pinned each page to the template its sitemap row called for.

2. Figma-to-Elementor structural mapping, not visual tracing. The design we were handed was a live Figma prototype rather than a flat picture. We pinned down its building blocks up front — how headings nested, how sections were spaced, where the mobile breakpoints fell — and held the Figma file as the spec each rendered page was checked against before it cleared staging.

3. The per-row hours we scoped were the contract. We scoped the per-row hours ourselves — 9 hours for the Homepage, 2 for the Services Lander, 0.2 per standard service page, and so on. We shipped each page against the hours its row allowed and never went page-by-page to haggle the price up. When gaps in the client’s copy started to show, we treated those figures as fixed and kept pricing closed — which is exactly what let the agency hold its fixed-cost promise to the practice. Summed across the project, the work landed on the agreed 50 hours.

4. Two QA loops, worked down before launch. Issues were tracked in two agency-side backlog tabs: the SEO Issues Backlog (48 rows, priorities across Low to High) and the AM Issues Backlog (20 rows, flagged with screenshots against staging). Of the 48 SEO items, 40 closed as Completed before launch; 5 were To Do, 1 was a website-live checkpoint, and 1 was In progress. Of the 20 AM items, 19 closed as Completed. The 29-item launch checklist — Design, Functionality, Content, Pre-Migration, Post-Migration — closed behind both backlogs.

The per-row hours we scoped were what held the scope together. When content arrived late and placeholder pages looked like candidates for scope reduction, those row-level budgets were the contract that kept every URL in the build — and the aggregate came in at exactly the agreed 50 hours.

Results

Metric Outcome
URLs built 21 — Homepage (1) · About Us (2) · Doctor Page (1) · Blog Lander (1) · Blog (1) · Contact Us (1) · Services Lander (1) · Service Page (8) · Smile Gallery (1) · New Patient (1) · Technology (1) · Default Template (2)
Templates applied 13 / 13 from the agency’s standard dental library
Launch checklist 29 items signed off across Design / Functionality / Content / Pre-Migration / Post-Migration
SEO Issues Backlog 40 / 48 closed as Completed; 5 To Do, 1 Website live checkpoint, 1 In progress
AM Issues Backlog 19 / 20 closed as Completed
Timeline 31 days (26 Mar – 26 Apr 2025), delivered on schedule
Effort 50h / 50h estimate — no overrun, no scope creep
Site status Live on WP Engine at https://songbirddentalstudio.com/ — verified April 2026.

Where it landed: 21 URLs sitting on 13 templates over WP Engine, all of it under the 50 hours we’d quoted. Both QA backlogs — SEO Issues and AM Issues — were taken down to the level the agency would accept, and the launch checklist was closed off before the domain switched over.

Operational Integrity at handoff

Pre-handoff QA on the 21-page staging build caught two categories of issue: the internal QA script flagged page statuses, meta data, links, and heading structure across the sitemap, and a manual image audit surfaced agency-supplied JPGs running 200–500 KB each — batch-converted to WEBP before the performance checklist could close. That pre-handoff pass ran through Site Checker. Our QA approach sets out which categories it covers and the standard each page had to clear. After we delivered, the agency ran the build back through its own setup, parking findings in the shared backlog, and we resolved them until the agency called it done.

Process

Phase Duration Outcome
Brief & estimation ~3 days Figma designs reviewed, sitemap rows confirmed, Hours Estimated column validated, 50h quoted and agreed
Build phase (pages + templates) ~2 weeks 21 pages built against 13 templates; Figma-to-Elementor mapping applied; SEO Issues Backlog opened
Content integration + QA tail ~1 week Client content integrated as it arrived; both QA backlogs worked in parallel; AM Issues Backlog closed to 19/20
Launch checklist + delivery final ~3 days 29-item checklist signed off; site went live on WP Engine

Build and QA ran concurrently from the second week; the content-integration stretch began before the last build-phase items had closed — which is why the calendar is 31 days rather than the sum of sequential phases.

Team

Delivery team

  • Nikita Tumasevic — developer support on content-integration rounds and issues-backlog corrections
  • Pavel Sazhin — QA iterations and fixes
  • Anna Polunina — implementation support and QA
  • Lyudmila Travkina — lead developer, Figma-to-Elementor mapping and full build across both phases
  • Anton Hersun, — project lead (estimation, agency-side communication, sign-off)

Scheduling the work and speaking to the practice were the agency’s job from first day to last, never ours. Songbird Dental Studio knew the site as their agency’s work; the developers who translated the Figma and closed the backlogs were never named to them. Every QA exchange ran through the shared issue tracker, so the practice met a finished build, not the people or process that produced it.

For agencies commissioning a white-label WordPress build

On a dental practice build, the service architecture sets the URL pattern, the schema graph, and the rankings the agency is responsible for. For this practice—a single-location clinic with a focused menu; for others—a multi-location group coordinating referrals. The risks sit inside the architecture itself: schema will be stripped on import, service-filter pages will go dark, a new treatment line in month six will need an entire migration.

The question to ask a dev partner before committing is not “can you build the pages?” — it is “how exactly will you preserve the schema and make the taxonomy flexible enough for the client’s next service line?”

Send us a current build workbook, a draft sitemap, or your design files. We will walk the plan against your ranking inventory, spot the schema and taxonomy risks, 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 →

Curious if your engagement fits this pattern?

Scroll to Top