Joey's Towing & Recovery: A Brand Built From the Real Trucks

How we replaced a decade-old Joomla template with a from-scratch site built around Joey's own truck livery, then caught a silent email bug and a duplicate-content issue during a careful live migration.

Joey's Towing & Recovery hero: "The number to know when you need a tow." with the truck that carries the same line painted on its doors

Joey's Towing & Recovery has been answering calls in Montgomery and the River Region since 2011 — 24/7 towing, roadside assistance, lockouts, winch-outs, and motorcycle towing. The old site was a Joomla template that had sat untouched for years: five thin pages, decade-old photos, and nothing done for search. The real brand — the one already painted on Joey's own trucks — wasn't on the website at all.

The challenge

The existing site did nothing wrong so much as nothing at all: generic towing-company stock language, aging photos, a template look that could have belonged to any towing company anywhere. Meanwhile Joey's trucks carry a real, distinctive identity — navy and red livery, a flag-swoosh graphic, and the line "The number to know when you need a tow." painted right on the doors. None of that had ever made it onto the website.

What we did

A brand pulled from the real trucks, not a template

Instead of designing a new identity from scratch, we extracted one that already existed. The site's palette is the literal truck livery — navy, red, paper, amber — not a generic "trustworthy blue" template color scheme. The hero phone number "paints on" with the same hard-shadow look as the lettering on the truck doors, the flag-swoosh stripes draw in on load, and a live clock reads "It's 3:28 PM in Montgomery. Joey's is answering." — a small, honest signal that someone's actually there. No logo existed for the business, so the wordmark is typeset directly in HTML and CSS, with a custom favicon built from the same swoosh motif.

Honest content, not inflated content

Every review on the site is a real, verbatim Google review — no fabricated testimonials, and deliberately no review-count schema markup, since that kind of self-serving markup isn't eligible for Google's rich results on a business's own site anyway. The site doesn't claim prices, guaranteed ETAs, heavy-duty capability, or services like locksmithing that the business doesn't actually offer. A new Winch-Outs & Recovery page was added because the capability is real, scoped to match exactly what the trucks can do. As a service-area business with no walk-in location, no street address is published anywhere on the site.

A careful live migration off a decade-old CMS

Taking a real, live business site off Joomla isn't something to rush. We backed up the full site and database and verified the backups before touching anything, then smoke-tested every page in production, including an actual end-to-end quote-form submission. That test caught a real, silent bug: the form's email notification was failing with zero visible errors anywhere, because the hosting provider blocks outbound email on the port PHP's default mail function uses. We only found it by checking the real inbox and seeing nothing had arrived — not by trusting a response that said "sent." Fixed by switching to authenticated SMTP, the same pattern already proven on other Cypress-built sites, and re-verified by checking the inbox again.

SEO verified against the live site, not assumed

Right before connecting Google Analytics and Search Console, we re-tested everything against the live production domain rather than taking the build's own documentation at face value. That caught a second real issue: the www version of the domain was serving the whole site directly instead of redirecting to the canonical address — a duplicate-content problem that would have worked against Search Console from day one. Fixed and re-verified the same session, alongside confirming every legacy Joomla redirect, the sitemap, structured data, and compression were all actually working in production.

The result

Joey's now has a fast, from-scratch static site — no framework, no third-party JavaScript libraries, the entire interactive layer built from about 8KB of hand-written JS — built around a brand that was always real, just never on the website. Since launch we've added Cloudflare Turnstile bot protection to the quote form and external uptime monitoring with email alerts.

Visit the live site or tell us about your business.

Have a question about your own site? Ask us, or call or text (256) 338-8383.

Free, in about 10 seconds

How healthy is your website?

Check speed, security, SEO, and mobile setup, with plain-English fixes for anything that needs work.