23-Page Dental CPA WordPress Build
23-page CPA advisory WordPress build with a mid-project reference-site pivot — 6 templates, 48 hours, 165 calendar days, full brand-name sanitization.
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 →
Build the URLs across the agency's templates, wire the conversion primitive, then work the QA backlogs to closure.
Client (end user): SBDP CPAs & Advisors (formerly Ascend Dental CPAs) — Jacksonville Beach, FL
Engagement: White-label development for a US marketing agency
Delivered: January – June 2025 · 165 days · 48 hours across build, pivot, and reconciliation phases
The Craft of a Build
Twenty-three pages of a CPA advisory firm’s WordPress build, already delivered on staging, when the agency relayed a client directive to pivot the design and content to beachcpafirm.com — a different reference site, requested halfway through the engagement. We absorbed the replication without disturbing the URL map, rewrote plagiarised copy, and executed a full brand sanitization from Ascend Dental CPAs to SBDP, closing inside the original 48-hour quote.
This case study is a record of such a build — a CPA advisory firm for dental practices, delivered for a US marketing agency in the professional-services segment.
Snapshot
| Field | Value |
|---|---|
| End-client industry | Professional Services — CPA and Financial Advisory for Dental Practices |
| End-client | Ascend Dental CPAs (Jacksonville Beach, 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, followed by a reference-site pivot and brand-sanitization pass |
| Scope | 23 URLs — homepage, What We Do services lander, 9 service pages, Who We Are / Core Values, Key Team Members lander, 5 partner bio pages, Resources section, Contact, plus blog posts added post-sitemap |
| Timeline | 165 days (3 Jan – 18 Jun 2025), delivered across phased engagements |
| Effort | 48 hours against estimate — no overrun |
| Team | 4 specialists (dev-heavy distribution appropriate for a build with a mid-project pivot and content-reconciliation tail) |
| Templates | 6 reusable templates — Homepage, About Us, Service Page, Team Member Bio, Blog, Default |
| Tech Stack | WordPress · Elementor · Gravity Forms · WP Engine · Site Checker (xaverPRO QA plugin) |
| Delivered | 23 URLs built across 6 templates, 3 redirect pairs reconciled, 59-item checklist tracked, 4-row Issues Backlog closed as Completed, mid-build pivot to BeachCPA Firm reference absorbed, full brand sanitization from Ascend to SBDP executed |
| Engagement cadence | 4 agency-raised issues · all closed by handoff |
| Review rounds | ≈8 review rounds across the 165-day calendar window |
| Per-ticket effort | 9 internal Redmine tickets · median 5h / P75 8h per ticket |
| Launch checklist | 58 items, signed off before cutover |
The Brief
A US marketing agency retained by Ascend Dental CPAs — a Jacksonville Beach CPA and financial advisory firm serving dental practices — handed us a Google Sheets workbook with a full URL map, a templates catalogue, a 59-item launch checklist, and a pre-populated Issues Backlog. The build ran on their WP Engine environment; the page builder was Elementor; forms ran through Gravity Forms.
The ask was staged. First, build out the firm’s existing site structure — 23 URLs across 6 standard templates — on the agency’s WP Engine staging environment. Then, mid-build, the agency relayed a client directive: pivot the design and content architecture to match a different reference site entirely (BeachCPA Firm), add blog posts and additional pages from agency-provided content, and finally execute a site-wide brand replacement from “Ascend Dental CPA” to “SBDP” across every page, menu, and Elementor data layer. Throughout, remain outside the end-client-facing loop; surface ambiguity back to the agency; do not improvise design, content, or CTA decisions.
Risk Context. On a white-label build for a professional-services firm, the client’s direction can change after the first pass is already on staging. The risk is not whether the dev team can replicate a new reference site; it is whether they can absorb a full reference-site pivot — copying a different firm’s layout and content architecture — and then execute a systematic brand sanitization from one identity to another, tracing every instance of the former brand name through pages, menus, Elementor data, and footer copy so that no remnant surfaces after handoff. That is not rework; it is delivery discipline on a scope that evolved in flight. Nor was the workbook a complete map — its Template column was empty for every sitemap row, so template selection had to be inferred from URL structure and page type rather than a pre-assigned mapping.
How We Did It
1. Six templates, 23 pages, one build pipeline. Ascend Dental CPAs’s pages spread across the agency’s template library: Homepage, About Us / Core Values, Service Page (the heaviest — 9 service pages under What We Do), Team Member Bio (5 partner and staff pages), Blog (lander + post template), and a Default fallback for supporting pages. Each page was built on its assigned template from the sitemap row; no page was hand-rolled outside the template system.
2. Spec followed line-for-line — including the per-page Hours Estimated column. The agency’s workbook carried an Hours Estimated value for every sitemap row — 8 hours for the Homepage, 2 hours for the Who We Are redirect, and 0.2–1.0 hours for the remaining structural pages, with a 19.5-hour aggregate for the initial sitemap. We implemented against those values. The principle: on a build with a pre-costed sitemap, the workbook is the contract. A dev team’s job is to deliver inside the row-level budgets, not to re-open the pricing conversation when the agency adds a pivot phase.
3. Mid-build reference-site pivot absorbed without corrupting the underlying structure. Late in the engagement, the agency directed a switch to BeachCPA Firm as the new design and content reference. The task involved replicating the reference homepage layout, adding blog posts and pages from agency-provided Google Drive content, and wiring new navigation without breaking the existing URL architecture. We preserved the sitemap’s URL structure while overlaying the new reference design, so that redirects, internal links, and checklist items remained valid through the pivot.
4. Systematic brand sanitization across all site surfaces. After the pivot, the agency requested a full replacement of “Ascend Dental CPA” and “Ascend” with “SBDP” — the firm’s new identity — across the entire site. We traced every instance through pages, navigation menus, Elementor data layers, footer copy, and resource links, then ran an internal QA pass to confirm no remnant branding remained before returning the site to the agency.
The brand-sanitization sweep was the closing discipline. The QA ticket enumerated every surface — footer copyright, the Who We Are and Core Values pages, navigation labels, contact page copy — because a CPA firm mid-rebrand cannot go live with a ghost identity anywhere on the site. Running that as a programmatic pass across all 23 pages, rather than a manual review, was what made the handoff verifiable.
Results
| Metric | Outcome |
|---|---|
| URLs built | 23 across 6 templates (1 Homepage · 1 What We Do lander · 9 Service Pages · 1 Who We Are / Core Values · 1 Key Team Members lander · 5 Team Member Bio pages · 1 Resources section · 1 Contact · plus blog posts added post-sitemap) |
| Templates applied | 6 / 6 from the agency’s standard template library |
| Redirect pairs reconciled | 3 unique pairs mapped in the sitemap (homepage, What We Do lander, Resources lander) |
| Issues Backlog | 4 / 4 closed as Completed (font colour, footer attribution, meta titles, button links) |
| Launch checklist | 59 items tracked across Design / Functionality / Content / SEO and Analytics / Responsive / Misc / Domain and DNS |
| Scope pivot | Reference-site replication (BeachCPA Firm homepage), blog and page additions, content re-write for plagiarism remediation — all absorbed mid-build without budget overrun |
| Brand sanitization | Site-wide replacement of “Ascend Dental CPA” / “Ascend” with “SBDP” across pages, menus, Elementor data, and footer copy |
| Timeline | 165 days (3 Jan – 18 Jun 2025), delivered across phased engagements |
| Effort | 48h / 48h estimate — no overrun, no scope creep |
| Handoff | Site staged on WP Engine; live at https://sbdpcpa.com/ post-cutover (under the new SBDP brand executed during the engagement) |
| Site status, verified 2026-04 | Unreachable from current environment; historical evidence of production readiness in Redmine journals |
The outcome, restated plainly: the agency’s 23-URL build shipped across 6 templates on the WP Engine environment, inside the 48-hour quoted budget. A mid-build reference-site pivot was absorbed, blog posts and pages were added from agency content, plagiarised copy was rewritten, and a full brand sanitization from Ascend to SBDP was executed before the agency’s post-handoff QA layer ran.
Operational Integrity at handoff
The closing QA ticket on this engagement was a brand-sanitization sweep: with ~350 pages on staging, Pavel ran a programmatic scan across titles, meta, H1–H2, and body text to surface every remaining instance of “Ascend” or “Ascend Dental CPA” before the site left our hands — catching residual occurrences on career pages, core-values copy, and service pages that a page-by-page review would have missed. Pre-handoff QA ran through Site Checker — see our QA discipline for the categories and the fail-zero gate. The agency’s own QA layer — their tools, their process — ran post-handoff and surfaced issues into the shared backlog for our fix loop until they signed off.
Process
| Phase | Duration | Outcome |
|---|---|---|
| Brief & estimation | ~1 week | Workbook reviewed, row-level hours confirmed, 48h quoted and agreed |
| Build phase (pages + templates) | ~3 weeks | All 23 URLs built across 6 templates on WP Engine staging; 59-item checklist and 4-row Issues Backlog opened |
| Reference-site pivot | ~2 weeks (in parallel with QA) | BeachCPA Firm homepage replicated, blog posts and pages added from agency content, plagiarism remediation completed |
| Brand sanitization + QA tail | ~3 weeks | Site-wide “Ascend” → “SBDP” replacement executed; Issues Backlog closed; checklist items verified |
| Reconciliation + delivery | final weeks | Remaining technical issues and sitemap fixes resolved; site handed off to agency |
Phases overlap — the reference-site pivot and brand-sanitization work ran concurrently with ongoing QA and checklist verification, which is why the calendar timeline is 165 days rather than the sum of individual phases.
Team
Delivery team
- Nikita Tumasevic — lead developer across initial build, reference-site pivot, and brand-sanitization phases
- Natalia Bogatel — homepage replication and BeachCPA Firm design matching
- Pavel Sazhin — QA iterations, content review, and brand-sanitization verification
- Anton Hersun, xaverPRO — project lead (estimation, agency-side communication, sign-off)
Agency-side project management and client-facing communication remained with the partner agency throughout. Our team was invisible to the end client.
For agencies commissioning a white-label WordPress build
If your agency has been burned by a dev partner who completed a build but left residual branding from a previous identity visible in copy, navigation, or footer — the kind that surfaces only after the client’s legal team reviews the live site — what prevents it is a systematic close, not a manual page-by-page pass. Send us a current build workbook and a brand-register list if the identity is in transition. We will estimate the sanitization scope, identify the surfaces most likely to carry residual brand, and return a fixed-hours quote — no cost, no obligation to proceed.
Don't have a spec yet? Send a one-paragraph description — we'll come back with the questions worth asking. Send a description →