Site Audit — Lift Parts Service

Tech stack + every page (on-page) + speed where testable + the fix plan · liftpartsservice.com · Axis Studios · capture date: June 2026
⚠️ Captured manually. The site is protected by enterprise bot-blocking (DataDome) that blocks automated crawling and Google's PageSpeed test. So this audit is built from a hand-capture of the pages, server headers, DNS, and in-browser speed tests — all real data, gathered the manual way. (Pages showing "—" for speed weren't individually tested; speed is template-driven, so we tested representative pages.)
Pages audited
24
Avg mobile
38
Avg desktop
84
Clean pages
0/24
Need attention
24
In plain English — what this audit found

On a phone — how most people and Google itself judge a site — it is slow on phones (speed score 38/100, where 90+ is the goal). the server takes about 2.4 seconds just to start sending a page (Google wants under 0.2), and that delay is added to every visit. the site is really 4 separate systems stitched together, which is the root cause of the slowness and makes it harder for Google and AI to read cleanly. page-by-page, the basics are mixed — 0 of 24 pages are clean, the rest have fixable issues listed below.

Why it matters: a slow, fragmented site loses customers who give up waiting, and gets ranked lower by Google — so you show up less and convert less of the people who do find you. The good news: every problem below is fixable, and they're listed in priority order with what we'd do about each. New to the web terms? Every technical word has a small ? you can tap for a plain-English definition, and there's a full glossary at the bottom.

🩺 Site health — the bottom line

The site is a slow patchwork of four separate systems, running a 3-year-old version of WordPress, behind a bot-blocker (DataDome) that blocked Google's own PageSpeed test (confirmed) and can interfere with crawling. It loads in ~8 seconds on a phone (Google's target is under 2.5) — see the per-page speed scores below. This is a rebuild candidate, not a tune-up. (All technical findings are as of our June 2026 capture.)
What's fine: every page has a title + meta description, GA4 + Google Tag Manager are installed, and most titles are well-written. The problems are structural, not cosmetic.

🧱 Tech stack

Everything currently powering the site, by layer — detected from its code, server headers, and public DNS:

LayerWhat they're runningStatus
CMS / page builderWordPress 6.0.2 + Elementor~4 years outdated
Web server / cacheLiteSpeed + LiteSpeed Cacheok
Edge / bot protectionDataDome (openresty, on AWS)hurts SEO
Hosting (public edge)Amazon AWS — Ashburn, VA
DNSMicrosoft (bdm.microsoftonline.com)
AnalyticsGA4 + Google Tag Manager + reCAPTCHApresent
Inventory / showrooms3rd-party dealer platform (Trader Interactive)bolted on
Online store / catalogSeparate platform (RocCommerce / theonlinecatalog)bolted on
Customer portalSeparate platform (disprism)bolted on

That's four different systems stitched into one website (WordPress + dealer-inventory + store + portal) — the root cause of the speed, consistency, and SEO problems.

🕳️ The holes

🔴 WordPress is ~4 years out of date. As of our June 2026 capture, running WordPress 6.0.2 (2022). An unpatched CMS this old is a real security risk (known vulnerabilities) and misses years of speed/SEO improvements.

🔴 DataDome bot protection works against the site's own SEO. Enterprise bot-blocking — overkill for a local dealer. It's a bot-blocker (DataDome) that blocked Google's own PageSpeed test (confirmed) and can interfere with crawling — working against the site's own Google visibility.

🔴 Four bolted-on systems = slow & inconsistent. A stale WordPress site, a third-party inventory platform, a separate store, and a separate portal — four codebases on one domain. That's why it's slow, disjointed, and hard to optimize consistently.

📋 Recommendations — everything we'd do (most → least important)

The complete fix list for this site, in priority order — auto-built from the performance diagnostics, the tech stack, and every page's on-page health. Keyword targeting, the content/blog plan, and local/GBP live in the SEO Strategy.

  1. Consolidate 4 systems into one fast platform CRITICAL Structural
    The site runs 4 stitched-together systems (WordPress + Elementor; Trader Interactive; RocCommerce / theonlinecatalog; disprism). That's the root cause of the slow speed, the disjointed experience, and the inconsistent SEO. Rebuilding on one modern platform (our Cloudflare edge setup) fixes all three at once — see the phased migration plan below.
  2. Cut server response time (2401ms → under 200ms)?TTFB stands for Time To First Byte — how long the server sits there thinking before it even starts sending the page. Think of it as how long the kitchen takes to start cooking after you order. Google wants this under about 0.2 seconds; this site takes much longer, and that delay is added to every single page load. CRITICAL Performance
    The server takes ~2.4s just to start sending the page — that delay is baked into every load, mobile and desktop. Server caching + a CDN help on the current site; a static/edge platform gets it under 0.2s, removing ~2.2s instantly.
  3. Update WordPress (6.0.2, ~4 years old)?Content Management System — the software the site is built and edited on (here it's WordPress). An out-of-date CMS is a security risk and misses years of speed and SEO improvements. HIGH Structural
    An unpatched WordPress this old is a security risk and misses years of speed/SEO improvements. Update it now (or replace it in the rebuild).
  4. Reconsider the DataDome bot-protection?A security tool meant to block malicious bots. The catch: it can also block the good bots — like Google's crawler and Google's own speed test — making the site harder for Google to read and rank. Here it's working against the site's own visibility. HIGH Structural
    DataDome blocks Google's own PageSpeed test and can interfere with crawling — it's working against the site's search visibility. Remove or reconfigure it so Google can read the site freely.
  5. Shrink the page weight (5.2MB → under 1.5MB)?The total size of everything a page has to download (images, code, fonts) measured in MB. Heavier = slower, especially on phones and slower connections. Big images are usually the biggest culprit. HIGH Performance
    Compress and right-size images, serve modern formats (WebP), and lazy-load below-the-fold media. Biggest single weight win and what slows phones most.
  6. Remove unused JavaScript (~813KB)?The code that makes a page interactive (menus, sliders, forms). Useful, but every extra piece a phone has to download and run slows the page down — especially on mobile. 'Unused JavaScript' is code that loads but isn't even needed on that page. HIGH Performance
    Each bolted-on system loads its own scripts. Defer/lazy-load non-critical JavaScript and drop libraries the page doesn't use — this is the main reason mobile scores far below desktop (phones can't power through the code).
  7. Add an H1 heading to 4 pages?The single biggest on-page headline at the top of a page — the title the visitor reads. Every page should have exactly one; it tells Google (and people) what the page is about. Zero or several is a problem. MEDIUM On-page
    No main headline at all on: /disclaimer, /privacy, /terms-conditions, /testimonials. Every page needs exactly one H1 telling Google what it's about.
  8. Trim 7 titles over 60 characters?The clickable blue headline for your page in Google's results. About 50–60 characters is ideal — long enough to describe the page, short enough that Google doesn't chop it off with '…'. LOW On-page
    /inventory, /inventory/new, /inventory/used, /map-hours, /pallet-racking, /privacy, /service-department — Google cuts long titles off in results.
  9. Add alt text to 66 images across 24 pages?A short written description attached to an image. It's read aloud to blind visitors and is how Google 'sees' a picture (for image search). Missing alt text is an accessibility and SEO miss. LOW On-page
    Describe each image for screen readers and image search — likely template images (logo, icons) missing alt site-wide.

🗺️ How we'd consolidate — the phased migration plan

Recommendation #1 sounds big, but it's not one giant rebuild — it's phases, each live and better before the next. And most of these systems we keep — we just stop them dragging the site down.

The move on each system — keep the engines that hold their data, money, and customers; replace only the slow display layer.

SystemOur moveNote
WordPress + ElementorReplace  rebuilt on our fast platform — this is the slow front-endThe slow front-end we're replacing.
Trader InteractiveIntegrate  pull their live data feed onto the new site; keep their inventory-management tool + workflow unchangedThey manage stock in TraderTraxx; TraderConnect or a feed can expose it to the new site.
RocCommerce / theonlinecatalogKeep + re-skin  commerce is tied to their back-office/ERP — keep it, restyle to match; replace only as a deliberate later project with clear ROIB2B commerce built for Infor ERP — holds the parts catalog + pricing. Keep it.
disprismKeep / investigate  confirm what's behind the login first; default is keep + link, don't touch customer accounts without reasonOlder customer-portal tool — confirm what's behind the login before touching it.
Phase 1 — Rebuild the marketing pages on one fast platform Low — our standard build
What we'd touch Replace the WordPress + Elementor marketing pages (home, about, services, info) with a clean build on our Cloudflare edge setup.
What we keep Nothing — these are the slow pages we're replacing.
What we need Their page copy, brand assets, and the page list (already captured in this audit).
What this delivers Most of the speed + SEO win. The pages that actually rank — fast and optimized — live before we touch anything else.
Phase 2 — Bring the inventory onto the new site (Trader Interactive) Medium — the one real new build, but a known pattern
What we'd touch Keep them managing inventory exactly as they do today. We display it on the fast site either by pulling their live data feed (best — fast, branded, SEO-friendly URLs) or, as an easy fallback, embedding their existing inventory widget.
What we keep Their inventory-management tool + workflow — we don't recreate listings by hand.
What we need Confirm their plan exposes an inventory feed or embed (standard in this industry) + feed access.
What this delivers Equipment listings that load fast and rank, under one roof — without changing how they add stock.
Phase 3 — Tidy the store & portal (RocCommerce / theonlinecatalog, disprism) — keep, don't rebuild Low risk — no rush, no impact on the main site
What we'd touch Leave RocCommerce / theonlinecatalog + disprism running. Re-skin them to match the new brand and link cleanly so it feels like one site. Modernize or replace only later, as a deliberate project, if there's clear ROI.
What we keep The store's commerce/ERP connection + payments, and the customer accounts — untouched.
What we need A short discovery call to confirm what each does and how much the store actually sells.
What this delivers One consistent brand across everything now, with the option to upgrade commerce later — and zero risk to checkout or accounts.

The reassuring part: you win the job on Phase 1 — the fast, optimized site we already build. Phase 2 is the one real new build (the inventory feed), and the store + portal you mostly keep. Phases 2–3 are a roadmap you propose, not prerequisites.

📄 Every page — on-page & speed

Perf/SEO: 90+ good · 50–89 · <50 Title = char count (50–60 ideal)H1 = should be 1Meta = char count (120–160 ideal)
Page Mobile Perf ?How fast & smooth the page feels on a phone — Google's PageSpeed score (0–100). Most people browse on mobile, and Google ranks mainly on the mobile version, so this is the one that matters most. 90+ is great, 50–89 needs work, under 50 is poor. Desktop Perf ?The same speed score, but for a computer/laptop. Usually higher than mobile because desktops are more powerful. 90+ is great. SEO ?Google's basic search-readiness score for the page (0–100): is it crawlable, does it have a title and meta description, is it mobile-friendly. 100 means the technical fundamentals are all in place. Title len ?The length, in characters, of the page's title — the blue clickable headline in Google results. About 50–60 characters is ideal: descriptive but short enough that Google doesn't cut it off. H1 ?How many H1 tags the page has. The H1 is the page's main on-page headline. There should be exactly ONE. Zero or two-plus is a problem. Meta len ?The length of the meta description — the gray summary under the title in Google results. About 120–160 characters is ideal. It doesn't change rankings directly, but a good one earns more clicks. Schema ?The hidden 'fact sheet' code that tells Google what the page is — a LocalBusiness, Article, FAQ, etc. This column lists the types found. Issues ?A plain-English list of anything off on this page. 'Clean' means nothing needs fixing.
/ 298483 571159 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt mobile 29 desktop 84
/about-us 581158 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/battery-handling-equipment 581153 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/careers 521118 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/contact 501154 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 3 img no-alt
/disclaimer 540155 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification no H1 2 img no-alt
/inventory 3483 621158 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 5 img no-alt mobile 34
/inventory/new 611151 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 5 img no-alt
/inventory/used 641150 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 5 img no-alt
/lithium-ion 541153 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/map-hours 641144 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/our-brands 551163 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/pallet-racking 631158 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/parts-department 4985 521153 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 3 img no-alt mobile 49
/privacy 610142 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification no H1 2 img no-alt
/rentals 3985 591159 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 5 img no-alt mobile 39
/service-department 3985 621159 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 3 img no-alt mobile 39
/showrooms/CLARK 56180 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 3 img no-alt
/showrooms/Karcher 58182 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 3 img no-alt
/showrooms/Linde 56180 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 3 img no-alt
/staff 491116 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/sweepers-and-scrubbers 491116 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification 2 img no-alt
/terms-conditions 480162 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification no H1 2 img no-alt
/testimonials 590163 Organization, LocalBusiness, PostalAddress, OpeningHoursSpecification no H1 2 img no-alt

📖 Web & SEO terms — in plain English

Every technical term used in this audit, explained in normal words. (You'll also see a tappable ? next to terms throughout the report.)

Mobile / desktop speed score
Google's 0–100 grade for how fast and smooth a page feels — on a phone (mobile) and on a computer (desktop). 90+ is great, 50–89 needs work, under 50 is poor. Most people and Google itself judge your site on the mobile score, so that's the one that matters most.
Server response time (TTFB)
TTFB stands for Time To First Byte — how long the server sits there thinking before it even starts sending the page. Think of it as how long the kitchen takes to start cooking after you order. Google wants this under about 0.2 seconds; this site takes much longer, and that delay is added to every single page load.
LCP (Largest Contentful Paint)
How long until the biggest thing on screen (usually the main image or headline) has loaded — i.e. when the page looks ready to the visitor. Google's target is under 2.5 seconds.
TBT (Total Blocking Time)
How long the page is frozen and unresponsive while the phone chews through code — taps and scrolls don't react during this window. Caused mostly by too much JavaScript (see below). Lower is better.
CLS (Cumulative Layout Shift)
How much the page jumps around as it loads (a button shifts down just as you go to tap it). Measures visual stability; near zero is the goal.
JavaScript
The code that makes a page interactive (menus, sliders, forms). Useful, but every extra piece a phone has to download and run slows the page down — especially on mobile. 'Unused JavaScript' is code that loads but isn't even needed on that page.
CSS
The code that controls how a page looks (colors, fonts, layout). 'Unused CSS' is styling code that loads but isn't used on the page — dead weight that can be stripped out.
Render-blocking
Code that the browser is forced to fully download and process before it can show anything — so the visitor stares at a blank screen longer. Deferring it lets the page appear sooner.
Page weight
The total size of everything a page has to download (images, code, fonts) measured in MB. Heavier = slower, especially on phones and slower connections. Big images are usually the biggest culprit.
Title tag
The clickable blue headline for your page in Google's results. About 50–60 characters is ideal — long enough to describe the page, short enough that Google doesn't chop it off with '…'.
Meta description
The short gray summary under the blue headline in Google results. About 120–160 characters. It doesn't change your ranking directly, but a good one convinces more people to click.
H1 heading
The single biggest on-page headline at the top of a page — the title the visitor reads. Every page should have exactly one; it tells Google (and people) what the page is about. Zero or several is a problem.
Canonical tag
A small piece of code that tells Google 'this is the one official version of this page.' It prevents Google from getting confused by duplicate or near-identical pages and splitting your ranking between them.
Schema markup
Hidden 'fact-sheet' code that spells out what a page is in a language Google and AI assistants read perfectly — e.g. 'this is a local business, here's the phone, hours, and reviews.' It's how you earn the rich extras in search results (star ratings, FAQs) and get quoted by AI.
Alt text
A short written description attached to an image. It's read aloud to blind visitors and is how Google 'sees' a picture (for image search). Missing alt text is an accessibility and SEO miss.
Crawl / crawlable
'Crawling' is how Google's automated robot reads your site, page by page, to figure out what's there. If something blocks or slows the robot, pages may not get found or ranked. 'Crawlable' = easy for that robot to read.
Index / indexable
After Google crawls a page, 'indexing' is it filing that page into its giant library so it can show up in results. 'Indexable' = allowed and able to appear in Google. A page that isn't indexed simply cannot rank.
CMS
Content Management System — the software the site is built and edited on (here it's WordPress). An out-of-date CMS is a security risk and misses years of speed and SEO improvements.
Bot protection (DataDome)
A security tool meant to block malicious bots. The catch: it can also block the good bots — like Google's crawler and Google's own speed test — making the site harder for Google to read and rank. Here it's working against the site's own visibility.
Manual capture (site is bot-blocked) · on-page from saved page HTML, speed from in-browser Lighthouse · 24 pages on-page, 5 speed-tested · Axis Studios · companion to the SEO Strategy · tap any ? to learn a metric