Skip to content
ADIMIZE

Website case study

A Tulsa junk removal site rebuilt off Squarespace, with the price list out front

JunkLimo's Squarespace site had a one-word title tag, no meta descriptions, no structured data and no city pages. We replaced it with a hand-coded 51-page site that publishes all five load prices and hands them to search engines as structured data.

JunkLimo · Tulsa, OK · Launched August 2026 · Visit the live site

JunkLimo homepage, desktop

The business

JunkLimo

JunkLimo is a junk removal company in Tulsa, OK. They haul furniture, appliances, garage and estate cleanouts, construction and yard debris, and commercial jobs across Tulsa and the surrounding towns. They price by trailer volume and publish the whole list: an $85 minimum up to $425 for a full load.

The old site was on Squarespace. It had 11 pages, carried a second brand name, and gave Google almost nothing to work with: no city pages, no page descriptions, no structured data.

“we get booked up all the time from our website being told that it's the most professional around.”

Victor Desbaillets

Owner, Junk Limo

The old site

What they had before.

Front end: what customers saw

Images
Most of the images on the old site were AI-generated, still carrying filenames like "generate-an-image-similar-to-the-first...". The rest included a downloaded Google logo and a stock five-star graphic.
Leftover platform parts
A shopping cart icon sat in the navigation of a business that sells nothing online. That's a Squarespace default that never got switched off.
Copy errors
"Applicance removal" was misspelled, the hours read "Mon-Sun 24/7h.", and "@ 2026" showed up in the copy. The site also claimed 24-hour service, which wasn't their actual schedule.
Two brand names
The site used a second name, "Tulsa Junk Co.", alongside JunkLimo. A customer, or a search engine, had no way to tell which one was the business.
Headings
Pages carried three competing H1s and lowercase section labels, so there was no clear main heading telling a reader or a crawler what the page was about.
Service area
The footer claimed the Tulsa metro, but there wasn't a single city page. The whole site was a homepage, a services page, six service pages, a booking page, contact and a blog.

Back end: what Google and AI saw

Title tags
The homepage title was the single word "JUNKLIMO". No service, no city.
Meta descriptions
Empty on every page. Google had to guess what to show under the link.
Structured data
None. No business markup, no service or price data, no FAQ markup. Nothing a search engine or AI assistant could read as a clean business record.
Image files
Uploads went up with names like IMG_0604.jpg and "Untitled design (18).png". Nothing in the filenames said junk removal or Tulsa.
Hosting and domain
Site, hosting and domain DNS all lived inside Squarespace. Getting out meant pulling the original photos off Squarespace's image servers before the switch.

What we built

The new site, piece by piece.

Structure
51 pages in the live sitemap: 11 core pages (home, services, pricing, service area, booking, reviews, FAQ, about, contact, commercial, and a junk removal vs dumpster rental comparison), 26 service pages and 14 city pages. Every old Squarespace URL 301-redirects to its new page, and the old /cart goes home.
Design
The name is JunkLimo, so the site looks like a limo: near-black paint, chrome trim and gold badging. The gold is sampled from their own black-and-gold logo, which we recovered from the old site. Every number is set in a monospace face so prices read like measurements.
Published pricing
All five tiers, from the $85 minimum to $425 for a full load, sit right under the homepage hero and on a gauge that fills as the trailer fills. The prices live in one file that drives the cards, the pricing table and the structured data, and the build fails if anyone types a price anywhere else.
City pages
14 city and neighborhood pages, from Midtown and Brookside to Broken Arrow, Jenks, Owasso and Claremore. Each one is written on its own around real local housing and job types, not a template with the town name swapped in, and each leads with reviews from customers in that area.
Quote form
The form emails the lead straight to the owner's inbox from the business's own domain, with the customer's address set as reply-to and the ad click ID, campaign and landing page attached. The customer is told they'll get a text or call with a firm price. If the email can't send, the customer is told to call or text instead. The form never shows a fake success. It works with JavaScript off too.
Photos by text
No upload box. The form shows the business number to text photos to, as both a tap-to-text link and plain copyable text, so it works on a phone or a desktop. Photos land in a thread the owner can reply to.
Tracking
GA4 and Google Ads run on the live domain only, with form submissions, phone taps and text taps tracked as separate conversions. Microsoft Clarity records sessions with the quote forms masked. Preview builds send nothing.
Schema
Every page carries a business record as a service-area business with no street address, plus opening hours and the 14 served cities. Service and Offer markup carries the five load prices as unit price specifications. FAQPage and BreadcrumbList markup sit on top.
AI search
robots.txt explicitly allows GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, PerplexityBot, Google-Extended, Applebot-Extended and CCBot. FAQ answers stay in the page when collapsed, so crawlers read them. The price for every load size is on the page and in the markup, ready for an assistant to quote.
Build checks
Three runtime dependencies and no Squarespace scripts. A check runs before every build and fails on a missing image, a photo over 250 KB, a hardcoded price, or hazardous-waste drop-off info written anywhere but its one source file. That file sends customers to the City of Tulsa facility, not the wrong agency.

Old vs new

Side by side.

 Old siteNew site
PlatformSquarespaceHand-coded Next.js, three runtime dependencies
Pages11, no city pages51: 11 core, 26 service, 14 city
Homepage title"JUNKLIMO""Junk Removal Tulsa, OK | Same-Day Pickup from $85"
Meta descriptionsEmpty site-wideWritten for every page
Structured dataNoneBusiness, Service, Offer with all five prices, FAQPage, BreadcrumbList
ImagesMostly AI-generated, default filenamesReal job photos, named for the job and the city, under 250 KB
TrackingNot measured on the old siteGA4, Google Ads conversions for form, call and text, Microsoft Clarity
AI crawlersNot measured on the old siteEight AI crawlers explicitly allowed in robots.txt

How a build like this runs, start to finish: See how we work →