Last updated October 17, 2026
Metal roofing
Architectural shingles
Tile roofing
GAF
Owens Corning
Flat & low-slopeFree roof inspection with deck photos before we talk money - GAF and Owens Corning certified installation
How to Hire a Roofing Contractor in Jacksonville: A Step-by-Step Guide
After Hurricane Irma moved through Jacksonville, the Florida Department of Business and Professional Regulation recorded a sharp rise in unlicensed contractor complaints across Duval County within 60 days. Most of those homeowners believed they had hired a legitimate company. They checked online reviews, they looked at the truck in the driveway, and they handed over a deposit. What they did not check was the state license. This guide walks through the exact steps to vet a roofing contractor in Jacksonville before any money changes hands, so you never find yourself in that position, and you can explore more guides & resources once you’re done. You’ll learn what licenses Florida actually requires, the five questions that expose a bad contractor in under five minutes, how to read a roofing contract line by line, and why a written price before work starts is the single most important protection a homeowner has.
Quick Answer
To hire a roofing contractor in Jacksonville, verify the company’s Florida state roofing license (look for a CCC license for a full re-roof) on the DBPR website, confirm the contractor pulls the permit themselves, get a written price before any work starts, and check that the certificate of liability and workers’ comp coverage are current. Never sign a contract with open-ended materials allowances or verbal estimates. A disciplined vetting process takes about 15 minutes and eliminates most of the storm-chasers and unqualified operators working Jacksonville neighborhoods.
Styles & brands we work with






Table of Contents
- Step 1: Verify the Florida Roofing License
- Step 2: Five Questions to Ask Before Anyone Gets on Your Roof
- Step 3: Permits, Inspections, and Who Pulls Them
- Step 4: How to Read a Roofing Contract Line by Line
- Step 5: Insurance Certificates and Workers’ Comp in Florida
- Step 6: The Written-Price Standard
- Step 7: Materials, Warranties, and What You’re Actually Paying For
Step 1: Verify the Florida Roofing License
Florida is one of the strictest licensing states for roofing contractors, but that strictness only helps homeowners who check. The state requires a roofing contractor to hold a license issued by the Florida Department of Business and Professional Regulation, commonly called the DBPR. You can verify any license in under three minutes at the DBPR website by searching the company name or the individual contractor’s name. Do not accept a photocopy of a license. Do not accept a business card with a license number printed on it. Pull the record yourself and confirm it is active, not expired, and not under any disciplinary action.
Here is what you are looking for when you find the license record:
- CCC license (Certified Roofing Contractor): This is what you want for a full roof replacement or re-roof in Jacksonville. A CCC license allows the contractor to perform roofing work anywhere in Florida without a local competency exam. It is the gold standard for a residential re-roof.
- CBC license (Certified Building Contractor): A CBC can legally perform roofing work, but roofing is not their specialty. A general building contractor may be fine for a small repair, but for a full re-roof in Jacksonville, you want a contractor whose primary license is roofing.
- Local registrations do not replace state licensure: Some contractors carry a Duval County or Jacksonville municipal registration. A local registration alone is not a substitute for a DBPR license. If a contractor only shows you a local registration, walk away.
- Disciplinary history: The DBPR record shows complaints, fines, and license suspensions. Read this section. A history of unpaid judgments or repeated code violations tells you more than any review site.
In Jacksonville, where named storms bring out-of-state crews every season, the license check is the first filter. An unlicensed contractor in Duval County cannot legally pull a roofing permit, which means they are either working without a permit or asking you to pull one yourself. Both are problems, and we’ll get to that in Step 3.
Step 2: Five Questions to Ask Before Anyone Gets on Your Roof
You do not need to be a roofing expert to identify a bad contractor. You need to ask five specific questions and watch how the answer is delivered. A legitimate contractor answers without hesitation. A storm-chaser hedges, deflects, or changes the subject back to price. These five questions take less than five minutes and filter out most of the bad actors working Jacksonville.
- “What is your Florida state license number, and may I verify it on the DBPR website?” A legitimate contractor volunteers the number immediately. Write it down and verify it later the same day. Any hesitation is a red flag.
- “Who pulls the permit for this job?” The contractor should pull the permit in their name. A contractor who asks you to pull the permit as the homeowner is almost always unlicensed or trying to avoid inspection. In Jacksonville, the permit is tied to the contractor’s license, so this question cuts straight to the core of whether you are dealing with a legitimate operation.
- “Will you put the price in writing before any work starts?” The answer must be yes, flatly and without conditions. If the contractor says they will finalize the price once they see the full damage, or that the written price will come after the tear-off, you are dealing with a variable-price model. That protects the contractor, not you.
- “What does your warranty cover, and for how long, in writing?” Roofing warranties are only as good as the paper they are printed on. A verbal warranty is not a warranty. Ask what exactly is covered, for how long, and whether the contractor will return at no charge if the repair or installation fails within the guarantee period. At Brennan Roofing Co Jacksonville home we call this the 365-Day Done Right Promise: every job is guaranteed in writing for one full year, and we return for free if it fails within that period.
- “May I see your certificate of liability and workers’ comp?” The contractor should provide both, with current effective dates, without being asked twice. In Florida’s tort environment, where liability disputes after storms are common, workers’ comp is not optional. We cover this in Step 5.
These questions are not aggressive. They are standard. Any contractor who makes you feel like you are being unreasonable for asking them is doing you a favor by revealing themselves early.
Step 3: Permits, Inspections, and Who Pulls Them
Every full roof replacement in Jacksonville requires a building permit issued by the city. The permit triggers the inspection. The inspection is the only independent verification that the roof was installed to Florida Building Code. Without a permit, there is no inspection. Without an inspection, you are taking the contractor’s word that the work is right. A contractor who skips the permit is not saving you money. They are removing the only third-party check on their work.
Here is what you should know about how permits work in Jacksonville:
- The permit is pulled by the contractor, not the homeowner. A roofing permit in Duval County is issued in the name of the licensed contractor. The contractor’s license number appears on the permit. The contractor is the one responsible for calling in the inspection and making sure the work passes.
- A contractor who asks you to pull the permit is a red flag. Sometimes this is framed as a convenience: “It’s faster if you pull it, and we’ll do the work.” What it usually means is that the contractor cannot pull a permit because they are not licensed. If the work fails inspection, the liability falls on you.
- The inspection happens after the work is complete. A Jacksonville building inspector reviews the finished roof for code compliance: nail patterns, flashing details, underlayment, drip edge, and ventilation. If the roof fails, the contractor must correct it before the permit closes.
- You should receive a copy of the closed permit. After the final inspection passes, the permit is closed and the work is officially completed to code. Keep that document. It matters for insurance claims, resale, and warranty enforcement.
Permits add cost, usually a few hundred dollars depending on the size of the roof, and they add a day or two to the schedule. Do not let a contractor talk you out of one. A roofer who offers to skip the permit to save you money is not doing you a favor.
Step 4: How to Read a Roofing Contract Line by Line
Roofing contracts in Jacksonville are not all created equal. The difference between a contract that protects you and one that protects the contractor is in the details. Read every page, but pay closest attention to these four sections, because this is where the problems hide.
Materials Allowances
An “allowance” is a dollar figure assigned to a material line item rather than a specific product. For example, a contract might say “shingle allowance: $3,200” without specifying which shingle. This gives the contractor license to install whatever they can buy for $3,200, not what you agreed to. At Roofing Company in Jacksonville we put the actual product on paper before any work starts: the manufacturer, the line, the color, the quantity. That is the difference between an allowance and a specification.
Open-Ended Materials Clauses
Look for language like “materials to be determined after tear-off” or “plywood priced per sheet as needed.” Roof decking is the most common version of this. Every roof has decking, and most replacements require some decking replacement. A contract that does not specify the per-sheet price for decking replacement, or the conditions under which decking will be replaced, leaves a gap in the total price that often widens after the roof is already off. Get the replacement decking cost per sheet in writing before the job starts.
Warranty Terms
The warranty section of the contract should specify three things in writing: what is covered, for how long, and what happens if the work fails within the guarantee period. If the warranty section is vague or missing, the warranty is essentially meaningless. When we install a roof in Jacksonville, the contract includes the 365-Day Done Right Promise: a written guarantee for one full year, with a free return visit at no charge if the repair or installation fails within that period. If a contract does not state the remedy, there is no remedy.
Exclusions and “Not Included” Language
Read the exclusions section carefully. Some contracts bury things like drip edge replacement, flashing replacement, or attic ventilation under exclusions, meaning you are agreeing to a roof replacement that does not include them. In Jacksonville’s climate, where wind-driven rain is a fact of life, drip edge and flashing are not optional add-ons. They are the difference between a roof that sheds water and a roof that leaks at the perimeter.
Step 5: Insurance Certificates and Workers’ Comp in Florida
Florida is a harsh environment for liability claims, and roofing is dangerous work. Before any contractor gets on your roof in Jacksonville, you want two insurance documents in hand: a certificate of liability insurance and proof of workers’ compensation coverage. Both should be current, and both should be verifiable.
Here is how to check each one:
- Certificate of liability (general liability): Look for a policy that is active on the date of your job and has an expiration date in the future. Call the insurance company to verify the policy is valid. Certificates can be fabricated, and a stale certificate is a common trick among underinsured contractors. Confirm coverage of at least $1 million per occurrence, which is standard for residential roofing.
- Workers’ compensation: Florida law requires roofing contractors with employees to carry workers’ comp. If a roofer drops a hammer on your car, that is liability. If a roofer falls off your roof and breaks a leg, that is workers’ comp. Without it, the injured worker can come after you. Ask for the workers’ comp certificate and verify it with the carrier. This matters more in Florida than in many other states because of how aggressively injury claims are pursued here.
- Background checks and crew discipline: Insurance covers accidents. It does not cover who is on your property. Ask if the company background-checks its technicians and whether they arrive in uniform. At Brennan Roofing Co Jacksonville, every technician is background-checked and arrives in uniform, so you know exactly who is on your roof. You should never have to wonder whether the person walking around your house is actually employed by the company you hired.
Verifying insurance takes one phone call and a few minutes. Skipping it can mean discovering after an accident that your contractor’s policy lapsed six months ago and the certificate they showed you was from a previous job.
Step 6: The Written-Price Standard
The single most important protection a Jacksonville homeowner has when hiring a roofer is a written price before any work starts. Not a verbal estimate. Not a ballpark number in a text message. A line-item price on paper, signed, with the scope of work defined clearly enough that there is no gray area to argue about later.
Verbal estimates protect the contractor. A contractor who gives you a number over the phone or in the driveway can always say the scope changed once the roof was opened up. A contractor who puts the number on paper before the tear-off has committed to something. If the decking is worse than expected, the contract should already specify the per-sheet replacement cost. If the flashing is rotten, the contract should already say who pays for it. That is the standard.
Here is what a written price should include before you sign:
- The specific roofing material, by manufacturer and product line
- The quantity of material, in squares (one square equals 100 square feet)
- The per-sheet price for any decking replacement
- The specific flashing and drip edge products, not just “flashing” as a line item
- The underlayment product by brand and type
- The payment schedule, tied to milestones, not to time
- The warranty terms, in writing, for the full guarantee period
- The permit cost and who pulls the permit
At Brennan Roofing Co Jacksonville, the price goes on paper before any work begins, and it does not move at the door. That is not a marketing line. It is the only way we work, and we have found that homeowners who have been burned before understand exactly why it matters. The Roof Repair in Jacksonville process runs the same way: a written price in hand before anything starts.
Step 7: Materials, Warranties, and What You’re Actually Paying For
When a Jacksonville roofing quote comes in lower than the others, the difference is usually in the materials. A cheap roof in this market is cheap because of what is underneath the shingles, not the shingles themselves. The underlayment, the flashing, the drip edge, and the ventilation system all affect how long the roof lasts and how well it holds up to the hurricane season, the afternoon thunderstorms, and the summer heat that beats down on a Duval County roof from June through September.
We install materials from manufacturer lines including GAF, CertainTeed, Owens Corning, and Atlas, among others. The difference between these lines is real, and we walk through the options plainly so homeowners can choose with confidence. Here is what matters most in the Jacksonville climate:
- Shingles with a high wind rating: Florida Building Code sets a minimum wind rating for shingles in our area, but not all shingles that meet the minimum are equal. Higher-rated shingles hold up better in the storm season.
- A quality underlayment: This is the water-shedding layer beneath the shingles. In a market where wind-driven rain gets under shingles, the underlayment is the last line of defense.
- Drip edge and flashing done right: Jacksonville’s rain finds every gap. Drip edge along the eaves and flashing around penetrations are where most leaks start.
- Ventilation that works in Florida’s heat: A properly ventilated attic extends the life of the roof and keeps cooling costs in check during a long Florida summer.
When you compare quotes, compare the materials line by line. If one quote is $3,000 lower, find the line item where the difference lives. It is usually in the underlayment, the ventilation, or the flashing. Ask the contractor to explain the difference in plain language. A good contractor can explain why one material choice makes sense for a Jacksonville roof, and a bad contractor will tell you it does not matter.
Common Mistakes to Avoid
- Checking reviews but not the license. Reviews can be bought, deleted, or inflated. The DBPR license record cannot. Jacksonville has seen enough unlicensed contractors with five-star review profiles to know the difference.
- Signing a contract with an open-ended materials clause. “Decking priced per sheet as needed” sounds reasonable until the roof is off and the price is now $2,000 higher. Get the per-sheet price in writing before the tear-off.
- Paying a large deposit up front. Florida law limits deposits for some contractors, and a roofer asking for 50 percent down is a warning sign. A standard deposit is more often in the 10 to 25 percent range, and the payment schedule should be tied to milestones.
- Letting the contractor pull the permit in your name. This shifts liability to you and often means the contractor cannot pull a permit themselves. The permit belongs to the contractor’s license.
- Skipping the workers’ comp check. In Florida, an injured worker without workers’ comp can come after you personally. One phone call to the insurance carrier prevents that.
- Choosing the lowest bid without comparing materials. In Jacksonville’s climate, the low bid is usually low because something underneath the shingles is being downgraded or omitted. Compare line items, not just totals.
- Accepting a verbal warranty. A warranty that is not in writing is not a warranty. If the contractor will not put it on paper, the contractor does not intend to honor it.
See the difference
Before
After
Before
After
Before
AfterWhen to Call a Professional
You should call a professional roofer in Jacksonville when you see missing or cracked shingles after a storm, when you find water stains on your ceiling, when your roof is approaching 15 to 20 years old and you want an honest assessment before it fails, or when an Roof Inspection in Jacksonville turns up issues you had not noticed. You should also call a professional before you buy a home with an older roof, because the cost of replacement should be part of your negotiation. Roof work is not a DIY project, and the combination of height, slope, and Florida heat makes it more dangerous than it looks from the ground. Brennan Roofing Co Jacksonville offers free estimates in Jacksonville, and every estimate comes as a written price before any work starts. Call (904) 719-6346 to schedule.
Frequently Asked Questions
A full roof replacement in Jacksonville typically runs between $8,000 and $15,000 for a standard single-family home with asphalt shingles, depending on the size of the roof, the pitch, the materials selected, and the condition of the decking; for a deeper dive, see our Roofing Cost Breakdown: The Jacksonville Homeowner’s Reference for 2026. A larger roof, a steeper pitch, or a premium shingle line pushes the number higher. For a precise written quote, call (904) 719-6346 and we’ll put the number on paper before any work starts.
A roofing contractor in Florida needs a CCC (Certified Roofing Contractor) license issued by the DBPR to perform a full re-roof, or a CBC (Certified Building Contractor) license for roofing work as part of a broader scope. A CCC is what you want for a roof replacement in Jacksonville. Verify any license on the DBPR website before hiring.
No. A full roof replacement in Jacksonville requires a building permit, and the permit must be pulled by the licensed contractor in their name. A contractor who offers to skip the permit or asks you to pull it yourself is not operating legally. The permit triggers the inspection, and the inspection is your only independent check on work quality.
A reasonable deposit for a roof replacement in Jacksonville is typically 10 to 25 percent of the total contract, with the remaining payments tied to milestones like material delivery and inspection passing. Be cautious of any contractor asking for 50 percent or more up front. A legitimate contractor finances the materials and labor until the work is underway.
A workmanship warranty from a Jacksonville roofing contractor should cover at least one full year in writing, with a clear remedy if the work fails within that period. At Brennan Roofing Co Jacksonville, every job carries the 365-Day Done Right Promise: guaranteed in writing for one full year, with a free return visit at no charge if the repair or installation fails within that period. Manufacturer warranties on materials vary by product line and typically run 20 to 50 years.
Check the Florida DBPR license record, verify the certificate of liability and workers’ comp with the insurance carrier, confirm the contractor pulls the permit themselves, and require a written price before any work starts. A legitimate Jacksonville roofing company will have no problem with any of these steps. Call (904) 719-6346 if you want a written estimate from a company that does all of these as standard practice.
The Bottom Line
Hiring a roofing contractor in Jacksonville is a vetting exercise before it is a price comparison. Check the license on the DBPR website. Ask who pulls the permit. Require a written price before any work starts. Verify the insurance certificates with the carriers. Read the contract line by line, with particular attention to materials allowances, decking replacement cost, and warranty terms. In Jacksonville’s climate and in Florida’s contractor landscape, these steps are not optional. They are the difference between a roof that protects your home for 20 years and a job you pay for twice. The Garrison Standard exists because we believe homeowners should not have to be roofing experts to get an honest roof. The price goes on paper first. The warranty is written for a full year. The technicians are background-checked and uniformed. The phones are answered by a live person. That is the standard, and it is the same on every job.
Written by Travis Oakley, Owner at Brennan Roofing Co Jacksonville, serving Jacksonville since 2000.