How Much Should a Roofing Company Spend on Marketing? A Budget Guide by Revenue
Topics
- The short answer
- Why the "5 to 10 percent of revenue" rule is not enough
- The method: from jobs to dollars
- Worked example: what four revenue tiers spend
- Why close rate and cost per lead move the budget more than the tier
- Test your budget against gross profit
- Splitting the budget: retail base plus a storm reserve
- Where to spend first at each stage
- Roofing Marketing Budget FAQ
The honest answer to "what percentage of revenue should a roofer spend on marketing" is that the percentage is an output, not an input. It comes from your average job, your close rate and what a lead costs in your market. This guide shows how to build the budget backward from the number of jobs you want, so you can see what each revenue tier needs to spend and when the spend stops making sense.
The short answer
- Percent-of-revenue rules are a starting range, not a plan. The SBA's training material suggests 7 to 8 percent of revenue for small businesses under $5 million that keep healthy margins. Roofing-specific blogs commonly say 5 to 10 percent. Treat both as a sanity check on the final number.
- Build the budget from jobs. Jobs needed, divided by close rate, divided by lead-to-appointment rate, gives the leads you must buy or earn. Leads times cost per lead gives the spend.
- Judge it by cost per closed job. Compare it to the gross profit on an average roof. If you can't say what a closed job costs you in marketing, you can't say whether your budget is too high or too low.
- Close rate moves the budget more than ad spend does. In the worked example below, the same $5 million company spends anywhere from about 2% to 12% of revenue to produce the same jobs, depending on close rate and cost per lead.
- Plan for two kinds of demand. Retail demand can be forecast and bought. Storm demand arrives on the weather's schedule. Set a base budget for retail and a flexible reserve for storms.
Why the "5 to 10 percent of revenue" rule is not enough
Percent-of-revenue rules are easy to quote and easy to repeat, but they ignore the things that decide whether marketing pays for itself.
Here is what the published ranges say, and what they do not.
- SBA. An SBA training document (ASCENT) says small businesses with revenue under $5 million should generally allocate 7 to 8 percent of revenue to marketing, and notes the figure assumes margins of about 10 to 12 percent after all expenses, including marketing. It also says budgets can run from 2 percent to 20 percent when a company is launching something new. This is general small-business guidance, not roofing data.
- Gartner. Gartner's 2025 CMO Spend Survey put average marketing budgets at 7.7 percent of company revenue. The respondents were mostly marketing leaders at companies with more than $1 billion in revenue, so it is a poor model for a local roofer.
- Roofing vendors. Roofing software and agency blogs commonly cite 5 to 10 percent. For example, JobNimbus lists maintenance mode at 3 to 5 percent, moderate growth at 6 to 8 percent and aggressive expansion at 9 to 12 percent or more. These are vendor opinions, not studies, and the vendors sell to roofers.
None of these ranges knows your average job size, your close rate, how much of your work comes from referrals, or whether you are trying to hold steady or add a crew. Two roofing companies at $5 million in revenue can sensibly spend very different amounts. Use the ranges to check your answer, then build the answer from your own numbers.
The method: from jobs to dollars
Start with the result you want and work backward. Use your own CRM numbers, not industry averages.
| Step | What to calculate | Formula in words |
|---|---|---|
| 1 | Marketing-sourced revenue target | Revenue goal times the share of work that should come from marketing (not referrals or repeat customers) |
| 2 | Jobs needed | Marketing-sourced revenue divided by average job value |
| 3 | Appointments needed | Jobs needed divided by appointment-to-sale close rate |
| 4 | Leads needed | Appointments needed divided by lead-to-appointment rate |
| 5 | Lead and ad spend | Leads needed times cost per lead |
| 6 | Cost per closed job | Cost per lead divided by (lead-to-appointment rate times close rate) |
| 7 | Add the fixed system costs | Website, CRM, call tracking, SEO, reviews, and your team's or agency's time |
Two points on the inputs.
Use the right close rate. Track close rate by lead source and by lead type, retail and insurance separately. A blended close rate hides which channel is working. If you are not tracking this yet, start with the roofing lead generation diagnostic.
Cost per lead is a market input, not a benchmark you can borrow. It varies by city, season, channel and offer. Pull it from your own ad accounts and lead sources for the last 90 days. If you have no data, run a small test before you commit a full-year budget.
Worked example: what four revenue tiers spend
The table below uses one set of example inputs for every tier. These are illustrative inputs, not industry benchmarks. Replace them with your own numbers.
Example inputs: average job $15,000; cost per lead $150; 35 percent of leads become appointments; 30 percent of appointments close; half of revenue comes from marketing, and the other half from referrals and repeat work.
| Annual revenue | Marketing-sourced revenue | Jobs needed | Appointments | Leads | Lead and ad spend per year | Per month | % of total revenue |
|---|---|---|---|---|---|---|---|
| $1M | $500K | 33 | 111 | 317 | $47,600 | $4,000 | 4.8% |
| $2.5M | $1.25M | 83 | 278 | 794 | $119,000 | $9,900 | 4.8% |
| $5M | $2.5M | 167 | 556 | 1,587 | $238,100 | $19,800 | 4.8% |
| $10M | $5M | 333 | 1,111 | 3,175 | $476,200 | $39,700 | 4.8% |
In this example the cost per closed job is about $1,430, which is roughly 9.5 percent of a $15,000 job, or about 4.8 percent of total revenue because half the work is not marketing-sourced.
The percentage stays the same across tiers here because the inputs do. In real companies it changes, and the reasons matter more than the tier.
What actually changes as you grow
- The referral share usually shifts. Smaller roofers often get a large share of work from referrals and repeat customers. As a company adds crews, it needs more demand than referrals can supply, which raises the marketing-sourced share and the spend.
- Fixed costs spread out. A website, CRM, call tracking and reporting cost about the same at $1 million and at $5 million. They are a bigger share of revenue at the low end. Add them on top of the lead and ad spend in step 7.
- Capacity limits the useful spend. More leads only help if crews, estimators and production can handle the jobs. Buying leads you cannot serve raises cost per closed job.
- Market size caps the spend. In a small market, you can reach saturation, where more budget buys a higher cost per lead rather than more leads.
A starting point for ad spend by market size
If you have no history to work from, GoRizen's roofing PPC guide gives starting ad-spend ranges by market size. These are ad spend only, not management fees: about $1,500 to $2,500 a month in smaller or suburban markets, $2,500 to $4,000 in mid-size metros and $4,000 to $6,000 or more in major metros, with roughly $1,500 a month as the recommended minimum. The same guide suggests about 60 to 70 percent on Google and 30 to 40 percent on Facebook, and allows 30 to 60 days to collect data and about 90 days to reach consistent performance. Treat these as a place to begin testing, then replace them with your own cost per closed job.
What the fixed system costs look like
On top of lead and ad spend, count what it takes to run the system. For GoRizen's bundled growth plans, management is priced by company size and listed on the pricing page: $3,400 per month for companies at $1 to $2 million in revenue, $6,800 for $2 to $5 million and $10,200 for $5 to $14 million. These plan prices do not include ad spend; ad spend is billed separately. Annualized, those fees equal about 2% to 4.1% of revenue at the $1 to $2 million tier, 1.6% to 4.1% at the $2 to $5 million tier and 0.9% to 2.4% at the $5 to $14 million tier. Ask any provider you compare whether ad spend is included, and add it to the total either way. If you plan to staff in-house instead, price the salary, tools and management time in the same way and compare the totals.
Why close rate and cost per lead move the budget more than the tier
Take the $5 million company from the table. It needs about 167 marketing-sourced jobs. The table below holds lead-to-appointment rate at 35 percent and shows what those jobs cost under different close rates and costs per lead.
| Close rate | Cost per lead $100: cost per closed job / yearly spend / % of revenue | $150 | $250 |
|---|---|---|---|
| 20% | $1,430 / $238,100 / 4.8% | $2,140 / $357,100 / 7.1% | $3,570 / $595,200 / 11.9% |
| 30% | $950 / $158,700 / 3.2% | $1,430 / $238,100 / 4.8% | $2,380 / $396,800 / 7.9% |
| 40% | $710 / $119,000 / 2.4% | $1,070 / $178,600 / 3.6% | $1,790 / $297,600 / 6.0% |
The same 167 jobs cost anywhere from about $119,000 to about $595,000 a year in this example. Starting from a 20 percent close rate and a $150 lead, lifting the close rate to 30 percent saves the same $119,000 a year as cutting the cost per lead to $100. In GoRizen's experience, close rate is often the lever a roofer controls more directly.
That is why a budget conversation should include follow-up speed, qualification and the estimate process before it includes more ad spend. Fix the leaks first, then scale. The roofing lead generation diagnostic walks through five common reasons leads do not close, from slow response to no direct ask for the sale.
Test your budget against gross profit
Percent of revenue is the wrong ceiling. The better ceiling is what a closed job can afford to pay for.
- Take your average job value.
- Multiply by your gross margin percentage to get gross profit per job.
- Decide what share of that gross profit you will spend to win the job.
- That share is the maximum cost per closed job.
Example: a $15,000 job at a 30 percent gross margin leaves $4,500 of gross profit. At the $1,430 cost per closed job above, marketing takes about 32 percent of that gross profit. Whether that is acceptable depends on your overhead and growth goals. The 30 percent margin is an example, not a benchmark. Use the gross margin from your own books.
If your cost per closed job is above your ceiling, the answer is usually not to cut the budget across the board. Find which source, campaign or lead type is above the ceiling and fix or cut that.
Splitting the budget: retail base plus a storm reserve
Retail demand runs through the year and can be forecast. Storm and insurance demand follows weather events, spikes fast and fades as claims settle. They need different budget logic.
Set the base budget on retail, because that is the part you can plan. Then hold a flexible reserve you can deploy when a storm hits your market. Size the reserve from your own history: what you spent and what you closed in your last two storm events.
To plan the year, weight spend by your own historical sales pattern, not by an even monthly split. One roofing software vendor gives an example split of 35 percent spring, 30 percent summer, 25 percent fall and 10 percent winter. Your local pattern, especially in hurricane or hail markets, will differ.
How the two kinds of demand differ, and how to move your mix toward retail, is covered in Retail vs Insurance Roofing Leads: How to Shift Your Mix.
Where to spend first at each stage
Order matters as much as amount. In GoRizen's roofing marketing guide, the sequence is: complete your Google Business Profile and reviews, then add Local Services Ads or Google Ads, then Facebook and Instagram for awareness and retargeting, then CRM and referral automation once leads start slipping through follow-up. The guide notes that sequencing is a bigger driver of return than budget size alone. See Roofing Marketing Strategies.
A practical way to apply it:
- Under about $2 million. Get the base right: Google Business Profile, reviews, a website that converts, a simple CRM with a response standard. Add one paid channel and measure it.
- About $2 million to $5 million. Add SEO for the services and cities that drive jobs, a second paid channel, and written follow-up cadences so no quote goes quiet.
- $5 million and up. Add budget governance: reporting by source and lead type, a storm reserve, creative testing, and capacity planning so lead volume matches production.
These are suggested stages, not rules. Move up only when the level below is producing booked jobs.
What to measure every month
A budget is only as good as the reporting behind it. At minimum, review booked jobs and cost per closed job by source each month, with close rates split into retail and insurance. Cost per lead helps diagnose a channel, but it is the wrong number to run the company on. For a full monthly checklist, see What an Agency Should Report to a Home Service Owner Every Month.
Proof: what a connected system looked like for one roofer
Best Roofing, one of South Florida's established roofing companies, had visibility but not a system that turned demand into predictable revenue. GoRizen built a full-funnel system: paid search and local visibility, organic search and Google Business Profiles, landing pages matched to buyer intent, and tracking from lead to closed deal, with ongoing optimization based on opportunity quality.
The case study reports, over 8 months, 1,000+ inbound leads (generated in a single quarter), 200+ sales-qualified opportunities, 40+ closed sales attributed to inbound marketing, a seven-figure revenue impact and triple-digit quarter-over-quarter growth in leads and closed deals. Those results reflect a mix of commercial, construction and service roofing projects. Every company's market, offer and follow-up differ, so use this as an example of the approach, not a forecast.
See all results on the Case Studies page and more roofing guidance in the Roofing Growth Hub.
How GoRizen Helps Roofing Companies Set and Use the Budget
GoRizen is a growth systems agency, founded in 2014, that connects ads, SEO, AEO, website, CRM and AI follow-up into one system and reports on booked jobs and cost per closed job. For roofing companies, that means:
- A budget model built from your own close rate, average job and capacity
- Paid ads management tied to cost per sale, not cost per click
- Lead attribution from first call to closed job, so you can see which source pays
- Speed-to-lead AI and CRM follow-up so the leads you buy get answered
- Monthly reporting on cost per closed deal, pipeline value, lost-deal reasons, return on ad spend by source and cost per booked appointment
See current plans on the pricing page. Plan prices do not include ad spend; ad spend is billed separately.
Roofing Marketing Budget FAQ
What percentage of revenue should a roofing company spend on marketing?
Published ranges run from about 5 to 10 percent for roofing, and the SBA's training material suggests 7 to 8 percent for small businesses under $5 million with healthy margins. Use those as a check, not a plan. Build the number from your average job, close rate and cost per lead, then compare cost per closed job to the gross profit on a roof.
How much should a roofing company spend on marketing per month?
It depends on how many jobs you want from marketing, not on a standard dollar amount. Divide the marketing-sourced jobs you need by your close rate and lead-to-appointment rate to get the leads required, then multiply by your cost per lead. In the worked example above, a $5 million company producing half its revenue from marketing spends about $19,800 a month on leads and ads, before fixed system costs.
Is 10 percent of revenue too much for a roofer to spend on marketing?
Not automatically. A company adding crews or entering new cities can justify a higher percentage if its cost per closed job stays under its gross profit ceiling. It becomes too much when cost per closed job rises faster than close rate, or when leads outrun crew capacity.
How much does it cost to get a roofing lead?
It varies by city, season, channel and lead type, and there is no reliable national number to borrow. Calculate yours from the last 90 days of ad spend and leads by source. Judge each source by cost per closed job, because a cheaper lead that closes less often can cost more per sale.
How should a roofer budget for storm season?
Set a base budget for retail demand and hold a separate reserve to deploy when a storm hits your market. Size the reserve from what you spent and closed in your last storm events. Make sure intake, estimators and crews can handle the surge before you buy the leads.
Should a roofing company spend more on marketing if close rate is low?
Fix the close rate first. In the worked example, moving close rate from 20 to 30 percent cuts the yearly spend needed for the same jobs by a third. Slow response, no qualification before the estimate and inconsistent follow-up are common causes.
What is a good cost per closed job for a roofing company?
There is no single good number, because it depends on your average job and gross margin. A practical ceiling is the share of gross profit per job you are willing to spend to win it. If your cost per closed job is above that ceiling, find the source or lead type that is pulling it up.
Should I hire a marketing agency or build in-house at my revenue level?
Price both in full. Count salaries, tools, ad spend and management time for in-house, and fees plus ad spend for an agency, then compare cost per closed job. Some companies also keep in-house roles and add an agency for specific channels. GoRizen's plan prices are on the pricing page and do not include ad spend, which is billed separately. For a full cost comparison, see Agency vs In-House for a $5M Home Service Company.
Build Your Budget With Your Own Numbers
If you have worked through the model above, you now know what a closed job can afford to cost. The next step is to see where your own funnel leaks and what a realistic budget looks like with your data.
We will walk through your numbers and show what it would take to build a growth system that books more jobs at a lower cost per closed job.
Veteran-owned and woman co-owned. 31 NE 17th Street, Miami, FL 33132 | 305.548.8464
