Skip to content

Web development · June 2, 2026 · 9 min read

How we cut a roofing site from 8 seconds to under 2

Danny walks through the exact things slowing down a Homestead contractor site, what he removed one by one, and what it did to the phone.

Danny Okafor

By Danny Okafor, web developer

How we cut a roofing site from 8 seconds to under 2
A Homestead roofing crew whose website used to load slower than a coffee break.

The site loaded in 8.1 seconds on a phone. The owner thought it was fine, because on the big monitor in his office it snapped up instantly. That gap, fast for the owner, painfully slow for the customer, is the single most common web problem I see with contractors in South Florida. His customers were not on a desk in an air-conditioned office. They were on a phone, on a roof, on bad signal, deciding in about three seconds whether to wait or tap the next result.

They tap the next result. Study after study says the same thing, and our own client data agrees: past about three seconds, half your visitors are gone before they see a word. For a business where one job is worth thousands of dollars, an eight-second site is not a small annoyance. It is a leak in the bottom of the boat.

How we actually measured it

Before touching anything, I measured the site the way a real customer experiences it, not the way it feels on office wifi. That means a mid-range phone on a normal mobile connection, the conditions most people are actually in when they search for a roofer after a storm. I use the same free tools anyone can: the browser’s own performance panel and Google’s PageSpeed report. Both told the same story. The page was heavy, it loaded a pile of things it did not need, and it did them in the wrong order.

What was actually slow

People assume a slow site needs to be rebuilt from scratch. Usually it does not. It needs a few heavy things found and removed. On this one, four things were doing almost all the damage.

  • A 14 MB hero video that autoplayed on mobile, so every visitor downloaded a short film before they saw the phone number.
  • Six web fonts loaded from three different services, each one a separate round trip before any text could show.
  • Photos uploaded straight from a phone at four thousand pixels wide, then shrunk in the browser instead of on the server, so phones downloaded the huge originals anyway.
  • Four tracking scripts, two of which nobody at the company could explain or remember installing.

None of that was the designer’s fault, exactly. It is what a site becomes after a few years of small additions, each one reasonable on its own, nobody ever removing the last thing before adding the next.

What we did, one thing at a time

I fixed these in order of weight, biggest first, testing after each one so I could see exactly what each change bought. That order matters. It means you never spend a day on a tiny gain while the fourteen-megabyte anchor is still tied to the boat.

The video

The autoplaying hero video went first. It was there to look impressive and it was costing him customers to do it. We replaced it with a single sharp photo of his own crew on a real Homestead roof. One real photo of the actual team beats a stock video every time, and it weighs about one four-hundredth as much.

The fonts

Six fonts became one, and that one now lives on the site’s own server instead of being fetched from somewhere else mid-load. Self-hosting a single font removes several separate trips across the network and stops the flash of invisible text where the page sits there blank waiting for letters to arrive.

The images

Every photo got resized to the size it is actually displayed at, and served in a modern format that is a fraction of the file size with no visible loss of quality. A phone should never download a four-thousand-pixel image to show it three hundred pixels wide. This one change alone cut more than half the page weight.

The scripts

The two tracking scripts nobody could name came off. If you cannot say what a script does and who reads its data, it does not earn a place slowing down every visitor. The two that stayed were the ones the owner actually uses to see where his calls come from.

Load time went from 8.1 seconds to 1.4. We did not rebuild the site. We took four heavy things off it.

What it did to the business

Speed is not the goal. Calls are the goal, and speed is one of the levers that move them. In the first thirty days after the faster site went live, quote requests went from about three a month to fourteen, with no other change to his marketing. Same ads, same reviews, same season. The only difference was that the people who clicked now actually waited around long enough to see the form and fill it in.

What you can check yourself, today

You do not need us to find out if you have this problem. Pull your own site up on your phone, on mobile data, not the office wifi, and count the seconds until you can read and tap. Then run it through Google’s free PageSpeed report and look for the same suspects: an autoplaying video, a stack of fonts, giant images, scripts nobody remembers. If your number is over three or four seconds on a phone, that is money walking out the door, and most of the fix is subtraction, not a rebuild.

What we deliberately did not do

It would be easy to tell this story as "we rebuilt his site". We did not, and that is the point. The owner had spent real money on the design, he liked it, and his customers recognized it. Throwing it out would have meant weeks of work, a bigger bill, and a stretch where he had no site at all. None of that was necessary. The design was fine. It was the plumbing behind the design that was choking it, and plumbing you can fix without tearing down the house.

We kept every page, every photo of his real crews, and all of his content exactly where Google already knew to find it. Keeping the pages and their addresses meant he did not lose the small amount of ranking he had built up, which a full rebuild often quietly costs you. The lesson I want owners to take from this is that slow almost never means "start over". It means find the weight and remove it. Making sites fast without a rebuild is most of what our web design and development looks like, and a rebuild is the most expensive answer to a problem that usually has a two-week answer.

A ten-minute check you can run right now

Open your own site on your phone, on cell data, and time it. Then, on a computer, search "PageSpeed Insights", paste in your address, and read the mobile score, not the desktop one. Look for the same four suspects we found: a video that plays on its own, more than one or two fonts, images measured in megabytes, and a stack of tracking scripts. If any of those show up and your score is in the red, you have found where your calls are leaking, and now you know it is fixable.

Speed helps you rank, not just convert

There is a second reason to care about this beyond keeping visitors from leaving. Google uses the speed of your site on a phone as one of the things it weighs when it decides where to rank you, through a set of measurements it calls Core Web Vitals. They come down to three plain questions: how fast does the main content show up, how quickly can someone tap something and have it respond, and does the page jump around while it loads. An eight-second site fails all three, which means it was not only losing the visitors it got, it was getting fewer visitors to begin with because it sat lower in the results. When we fixed the speed, we were pulling two levers at once: more people found the site, and more of the people who found it stayed.

The order is the whole trick

If you take one thing from this, take the order. Find the single heaviest thing on the page and deal with it before you touch anything else. Most slow sites have one or two anchors doing eighty percent of the damage, usually a video or a pile of full-size images. Owners and even some developers burn days shaving milliseconds off small things while the real weight sits untouched. Measure, find the anchor, cut it, measure again. It is unglamorous and it works almost every time.

If you would rather I looked at yours, that is part of the free audit. Send us your site and I will tell you your real mobile load time, what is causing it, and whether it is a two-week fix or a rebuild, before you spend anything.

Have a question this didn't answer?

Ask it. We'll answer plainly, and if it needs a look at your site, we'll do that for free.

+1 877 806 0303

1200 Brickell Ave, Suite 1950
Miami, FL
Monday to Friday, 9am to 6pm

Jeff or Marisol replies personally, usually within one business day.

Jeff or Marisol replies personally, usually within one business day.