Open now — 24/7 storm response St. Louis Metro & Metro East (314) 429-6000
John Beal Roofing rectangle logo in yellow and black St. Louis RoofingBy John Beal Roofing

Where We Roof, at a glance

Offices in Maryland Heights, Chesterfield, Festus and Edwardsville put crews close to every part of the metro.

Roof replacement on a St. Charles County home in our St. Louis service area
On The Roof

Every city with its own page

More about John Beal Roofing

Why local matters in this metro

Roofing conditions change across the St. Louis area more than people expect. Brick two-flats in the city fail differently than post-war ranches in north county, which fail differently again than 1990s subdivisions in St. Charles County.

A crew that works one neighborhood type all week knows what's under the shingles before pulling one. That's the practical argument for hiring locally.

Both sides of the river

Our Edwardsville office covers the Metro East - Madison and St. Clair County - so Illinois homeowners aren't waiting on a crew crossing the river in traffic.

Festus covers Jefferson County. Chesterfield and Maryland Heights cover west and central county plus St. Charles County.

Response times

Emergency calls get dispatched from whichever office is closest. For active water intrusion we aim same day, and we answer the phone at any hour to start that clock.

Scheduled work depends on season. After a metro-wide hail event, everyone calls at once and we're honest about where you sit in the queue.

Get a free roof inspection

Fill this out and we'll call you back. If water is coming in right now, phone us instead so we can move faster.

No obligation and no pressure. We will call to confirm a time that works, and inspections are free. Need someone right now? Call (314) 429-6000 — a real person answers 24 hours a day.

Need A Roofer In St. Louis?

One free inspection replaces a week of guessing. Photos of the real condition and a written price, no obligation.

Call Now Free Inspection