Few things ruin a roofing contractor Monday faster than opening an audit bill that is two or three times what they expected. Insurance audits are a routine part of doing business with workers compensation and general liability policies, but for roofers, audits carry outsized risk because of high classification rates, variable payroll, subcontractor usage, and the seasonal nature of the work. When the audit comes back higher than expected, you need to understand why it happened, what you can challenge, and how to prevent it from happening again.
An audit is not a penalty. It is a contractual mechanism that reconciles your actual exposure during the policy period with the estimated exposure you reported when the policy was written. If your payroll grew, if you hired subcontractors without their own insurance, or if your revenue exceeded projections, the audit catches the difference and you owe additional premium. The problem is that audits often catch errors, misclassifications, and misunderstandings that inflate the bill beyond what you actually owe.
Why Roofing Audits Come Back High
The most common reason for a high audit is payroll growth that was not reported during the policy term. Roofing is seasonal in most markets, and contractors often hire additional workers during the busy season without notifying their agent or carrier. A contractor who estimated $400,000 in annual payroll but actually ran $650,000 will owe additional premium on the $250,000 difference, calculated at the full roofing class code rate. At $25 per $100 of payroll for workers comp, that is $62,500 in additional premium from the audit.
Uninsured subcontractors are the second most common driver of high audits. When you hire a subcontractor who does not carry their own workers comp insurance, the auditor includes that sub payroll in your premium calculation. If the sub cannot provide a certificate of insurance covering the period they worked for you, their entire payment is treated as payroll and rated at the highest applicable roofing code. A sub crew you paid $80,000 over the course of a season, if uninsured, could add $20,000 or more to your audit.
Misclassification is another frequent issue. If the auditor determines that employees you classified under a lower-rated code, such as clerical or estimating, were actually performing roofing work or regularly visiting job sites, their payroll gets reclassified to the roofing code at the higher rate. The auditor makes this determination based on job descriptions, payroll records, and sometimes interviews with employees. If your estimator occasionally helps on the roof, even once, the auditor has grounds to reclassify them.
Revenue-based GL audits can also produce surprises. Some GL policies are rated on gross receipts rather than payroll. If your revenue significantly exceeded the estimate on your policy, the GL audit will generate additional premium. This is particularly common for contractors who experienced a strong storm season and ran significantly higher revenue than projected.
What You Can Dispute
Not every high audit is correct. Auditors make mistakes, and you have the right to dispute findings that are inaccurate or based on incomplete information. Here are the most common items worth challenging.
Subcontractor payroll inclusion is disputable if the sub did carry insurance during the period they worked for you, and you can provide the certificate of insurance to prove it. Auditors sometimes include sub payments because the certificate was not on file at the time of the audit. If you can produce the certificate showing continuous coverage during the relevant period, the auditor should remove that payroll from your calculation.
Classification disputes are worth pursuing if you can demonstrate with job descriptions, time records, and payroll documentation that specific employees genuinely performed work under a lower-rated classification. The key is documentation. A written job description that says "estimator - no physical labor on job sites" combined with time records showing the employee was in the office during work hours is persuasive. A verbal claim without supporting records is not.
Overtime payroll should be adjusted in your favor. Most states allow you to exclude the overtime premium portion of overtime pay from the workers comp payroll calculation. If an employee earns $30 per hour and works 10 hours of overtime at $45 per hour, only $30 per hour should be counted for workers comp purposes. Auditors sometimes miss this distinction and include the full overtime pay. Review your payroll records and make sure overtime was properly adjusted.
Owner payroll caps exist in many states. If you are an owner or officer of the company, your state may cap the amount of your payroll that is included in the workers comp calculation. For example, many states cap executive officer payroll at a specific weekly or annual amount. If the auditor included your full compensation without applying the cap, dispute it.
The Dispute Process Step by Step
When you receive an audit bill that seems too high, do not ignore it and do not pay it without reviewing the details. Here is the process for handling an audit dispute.
First, request the full audit worksheet from your carrier or auditor. This document shows every payroll figure, every subcontractor payment, every classification code, and the calculations used to arrive at the additional premium. You cannot dispute what you cannot see, so get the worksheet before you do anything else.
Second, compare the audit worksheet to your actual payroll records, tax filings (941s, W-2s, 1099s), and subcontractor certificates. Identify every line item where the audit figures differ from your records. Note specific dollar amounts and the supporting documentation you have for each discrepancy.
Third, contact your insurance agent and present your findings. Your agent is your advocate in the audit dispute process. They can communicate with the carrier on your behalf, request a re-audit or desk review, and help present your documentation in a way that maximizes the chance of a favorable adjustment. A good agent who specializes in contractor insurance has been through this process many times and knows what arguments carry weight with auditors.
Fourth, if the carrier does not adjust the audit to your satisfaction after the initial dispute, you can request a formal re-audit. This typically involves a different auditor reviewing your records independently. In some cases, you may be able to request that the re-audit be conducted at your location so you can present your records in person and answer questions in real time.
Fifth, if the re-audit does not resolve the dispute, most states have a process for filing a complaint with the state rating bureau (NCCI or the state equivalent) or the department of insurance. This is a last resort, but it is available if you believe the audit was conducted incorrectly and the carrier refuses to make appropriate adjustments.
Throughout the dispute process, continue to make payments on the undisputed portion of the audit. Do not withhold all payment while the dispute is pending. Nonpayment of an audit bill can trigger cancellation of your policy, which creates far bigger problems than the audit itself.
Preventing Audit Surprises Going Forward
The best audit dispute is the one you never have to file. Preventing audit surprises requires consistent practices throughout the policy period, not just at audit time.
Report payroll changes to your agent as they occur. If you hire three new roofers in March, notify your agent in March, not in December when the audit happens. Mid-term endorsements adjust your premium incrementally and eliminate the lump-sum shock at audit time. Yes, you will pay more during the policy term, but you are paying what you actually owe, spread out over months instead of hitting all at once.
Maintain a subcontractor insurance file that is organized and current. For every sub you hire, collect a certificate of insurance before they start work. Verify the certificate is valid. Set a calendar reminder to check expiration dates. If a sub certificate expires during a project, get the renewal certificate immediately. At audit time, this file is your proof that sub payroll should not be included in your premium calculation.
Keep accurate, detailed payroll records with clear separation between classification codes. If you have employees who split time between roofing work and office work, maintain time records that document the split. Use separate pay codes or cost centers for different job functions. The cleaner your payroll records, the easier the audit and the less room there is for classification disputes.
Work with your agent to review your estimated payroll and revenue quarterly. If your business is trending significantly above the estimates on your policy, a mid-term adjustment is far preferable to an audit surprise. Some agents offer quarterly check-in calls specifically for this purpose. If yours does not, ask for one or find an agent who understands the roofing audit process and will help you manage it proactively.
Audits are a fact of life in the roofing insurance world, but they do not have to be a source of financial pain. With proper documentation, timely reporting, and an agent who knows the roofing industry, your audits should confirm what you already know rather than delivering unwelcome surprises.