Most visits start on a phone, in a driveway, the morning after a hailstorm
Design for a small screen, a distracted reader and a connection that is not what your office has.
The desktop mockup is not the real page. The real page is six inches tall, held at arm's length, in bright sun, competing with a neighbor who is also having a conversation about roofs.
Whoever built the site probably reviewed it on a fast connection over office wifi. Test it instead on a phone with the cache cleared, on cellular, in a neighborhood at the edge of your service area. What loads first tells you what you actually built.
The top of the page needs three things and nothing else. Who you are, where you work, and how to start. Everything decorative can wait until the reader has decided you are worth scrolling for.
Tap targets and phone links matter more than they should have to. A phone number that is an image, or a call button too close to a menu item, silently costs jobs and never shows up in any report.
Put the county list where the hero slideshow usually goes
The visitor's first question is whether you cover their address, and most roofing sites answer it on a page nobody reaches.
The Metroplex covers Dallas, Tarrant, Collin, Denton, Rockwall and Ellis counties, and no roofer serves all of it well. A homeowner in Arlington and a homeowner in McKinney are both trying to find out the same thing quickly.
Name the cities in plain text near the top. Plano, Frisco, McKinney, Richardson, Carrollton, whichever ones are real. A named list reads as a company with crews rather than a lead broker covering everything.
Being explicit about where you do not go is worth more than it costs. The inquiries you lose are the ones you would have declined, and the credibility you gain applies to everyone else.
Give each real service area a page with its own photographs and its own detail. Reused text with the city name swapped is obvious to a reader long before it becomes a search problem.
Two fields decide the dispatch: the address and whether water came inside
An inquiry form for roofing should collect what determines the appointment, not what fills a CRM record.
Address determines whether you go at all, and it should be the first thing asked. Not city, not zip alone, the street address. Everything downstream depends on it.
Whether water is coming inside determines urgency, and it splits the queue between a call today and a survey next week. One question, two options, and your intake team stops guessing.
After that, ask the things your estimator asks on every call. Roughly how old is the roof. What did you notice, and when. One story or two. Is this a repair you are asking about or are you thinking about replacement. Four short questions cost you very few submissions and save a whole phone call.
Do not ask for anything you will not use. Preferred contact time, how they heard about you and budget range all reduce completion, and the first two can be captured later without cost.
If a homeowner mentions an insurance claim, the form should route it to a person rather than trigger an automated promise. What a contractor may say about a claim is regulated in Texas, so the safe default is a real conversation and a suggestion that they speak with their insurer.
Show the yard and the trucks, because a storm chaser has neither
Every credibility element on the page should be something a temporary operation cannot easily copy.
Stock photography of a generic suburban roof does nothing. A photograph of your actual yard, your trucks with your name on them, and the people who will be on the roof does a great deal, particularly in the weeks after a storm when a homeowner is trying to sort locals from arrivals.
Put a physical street address in the footer and on the contact page. A company that has been in Dallas County for years should say how long, in plain numbers, and say it where a skeptical reader will find it.
Show real jobs at the neighborhood level. A tile roof in Highland Park, a steep cut up roof in Lakewood, a run of tract homes in Allen. Local recognition does work that a generic gallery cannot.
Keep license, insurance and warranty information on a page you can send as a link. People ask, and having a single URL to reply with is worth more than a badge row nobody reads.
Three third party widgets cost more speed than every photograph on the site
Roofing sites are usually slow because of what was added to them, not because of the roof pictures.
Chat bubbles, review carousels, tracking pixels, a heat mapping tool somebody installed in 2022, a scheduling embed and two analytics scripts will comfortably outweigh a gallery of properly sized photographs.
Audit what is loading before anyone redesigns anything. Removing scripts nobody uses is the cheapest performance work available and it usually changes the mobile experience more than a new theme would.
Photographs still need handling. Modern formats, correct dimensions for the space they occupy, lazy loading below the fold, and one genuinely good image above the fold loaded at priority. Roofing galleries are worth having, they are just not worth loading all at once.
Video of drone footage on the homepage is a common and expensive mistake here. If it must exist, put it on its own page behind a click, not autoplaying on the page a homeowner opens on cellular in a driveway.
Write the warranty page you would want to read after the next spring storm
The document a buyer most wants and least often finds is a straight explanation of what happens if something goes wrong later.
A roofing purchase in North Texas has an obvious anxiety attached to it. Hail comes back. The buyer is trying to work out who will still be reachable when it does.
Answer it directly. What the workmanship warranty covers and for how long. What the manufacturer warranty covers, and what it does not. What a homeowner should do if they think something failed. Who they call and what happens next.
Keep insurance carefully separate from all of that. Explaining your own warranty is your business. Predicting what an insurer will cover is not, and in most cases it is worth confirming with the homeowner's own insurer and, for your marketing language, with your own counsel.
Financing belongs nearby, because a replacement is a large unplanned expense and a homeowner waiting on a settlement may need a bridge. State the terms plainly rather than making people call to find out.
Questions we actually get
- How fast does a roofing website really need to be?
- Fast enough to be usable on cellular in a residential neighborhood, which is a harder target than an office connection. The practical test is to clear your cache and open the site on a phone in a suburb at the edge of your service area. If you notice yourself waiting, a homeowner with two other contractors' cards in hand certainly will.
- Should the site have a chat widget?
- Only if someone real answers it quickly. An unanswered chat is worse than no chat, and most of them are heavy enough to slow the page for every visitor whether they use it or not. If you cannot staff it during the hours you advertise, spend the same effort on making the phone answer faster.
- What should the inquiry form ask for a roofing company?
- Street address first, then whether water is entering the house, then roof age, what the owner noticed, and whether they are asking about a repair or a replacement. That is enough to route the inquiry correctly. Anything else can be gathered in the call and mostly just reduces the number of forms completed.
- Can I mention insurance on my website?
- Carefully, and in general terms only. Texas regulates what a roofing contractor may say to a homeowner about an insurance claim, so we keep site copy focused on inspection and repair work and point homeowners to their own insurer for anything about coverage. Any language that could read as claim handling is worth a review by your own counsel before publishing.
- Do I need separate pages for each city I serve?
- For the cities you genuinely serve, yes, and they should differ from each other in more than the name. Real photographs from that area, the housing stock you see there, and specifics a local reader would recognize. Duplicating one page across every suburb in the Metroplex tends to hurt the whole site.