Get Started

Free Estimate or Ballpark Price in Your Ad? Which Offer Books More Appointments

Free estimate or ballpark price in your contractor ad? Here is the math on which offer books more appointments, what each attracts, and when to run both.

Free Estimate or Ballpark Price in Your Ad? Which Offer Books More Appointments

Two contractors run the same Meta campaign in the same market with the same $3,000 monthly budget. One headline says "Free Estimate — Schedule Today." The other says "Most Roof Replacements in [County] Run $12,000–$22,000. See Where Yours Lands."

The free estimate ad produces 60 leads. The pricing ad produces 38. Most contractors look at that and shut the pricing ad off.

They just turned off the campaign that was going to make them more money. Here is why, and here is the math that proves it before you spend another dollar.

Why does the offer in your ad decide your appointment rate?

The offer is the only part of your ad that sets expectations. Targeting decides who sees it. Creative decides who stops scrolling. The offer decides what the homeowner thinks is about to happen to them.

A homeowner who clicks "free estimate" believes they are requesting information. A homeowner who clicks a price range believes they are starting a transaction. Those are two completely different people arriving in your pipeline with the same contact fields, and they behave differently at every stage after the form.

That is why cost per lead is such a misleading number here. The cheap lead and the expensive lead are not the same product. One of them has already agreed to your price band. One of them is going to ask "so how much does this usually run?" ninety seconds into the call and then go quiet.

If your team is already struggling to turn raw leads into appointments that sit, the offer is upstream of that problem. Fixing it upstream is cheaper than fixing it with more call attempts, which is the entire reason our appointment setting work starts with what the ad promised before it touches a phone script.

What does a free estimate offer actually attract?

Free estimate is the default offer in home improvement because it is the easiest thing to write and it requires zero commitment from the homeowner. That is both the strength and the problem.

What it does well

  • Volume. The lowest friction offer on the internet produces the most form fills. On a $3,000 budget you will reliably see more raw leads.
  • Top-of-funnel reach. It catches homeowners who are early, curious, or just comparing. Some of those become jobs in 60 to 120 days with real follow-up.
  • Works for urgent damage. A leaking roof, a dead furnace, a flooded basement. When the homeowner already has a problem they cannot ignore, they are not price shopping. They want somebody out there.

Where it falls apart

  • Everyone runs it. Your ad looks identical to the four other contractors in the feed. Nothing in the offer tells the homeowner why your company.
  • It reads as a sales visit, because it is one. Homeowners know an on-site estimate ends with a price and a pitch. The ones who are not ready for that book, then cancel.
  • No budget filter. You pay for leads whose project is $18,000 and whose ceiling is $6,000. You find out in the driveway.
  • Lower sat rate. This is the hidden killer. Set appointments are a vanity number. Appointments that sit are the number that feeds the crew.

What does a ballpark price offer actually attract?

A ballpark offer puts a real number in the ad. Not a quote. A range with a reason attached.

Examples that work across trades:

  • "Full seamless gutter replacement on most homes here runs $1,400–$2,600 installed."
  • "Tub-to-shower conversions typically land between $9,000 and $18,000 depending on scope."
  • "Composite deck builds in this area run roughly $20,000–$45,000. Here is what moves the number."
  • "Panel upgrades run $1,800–$4,500 installed in most homes."

The form fill drops. The quality of who fills it out changes completely.

Why it books better appointments

The homeowner has pre-agreed to the band. They did the flinching in the feed instead of at your kitchen table. Your rep walks into a conversation about scope and timeline instead of a conversation about whether this is affordable at all.

It also kills the single most common appointment killer in this business: the price surprise. A homeowner who expected $6,000 and hears $19,000 does not negotiate. They end the appointment politely and never answer again. Our breakdown of the contractor sales process covers how to handle that moment in the room, but the cheapest place to handle it is before the lead exists.

Where it falls apart

  • Volume drops. If your ad account needs volume to exit the learning phase, a hard price gate can starve it.
  • Anchoring risk. Publish the lowest job you ever did and every lead expects that number. Publish the honest working range.
  • Wrong fit for emergencies. Nobody with water coming through a ceiling cares about your range. They want a truck.
  • Requires honesty you may not have. If your pricing is all over the map, you cannot publish a band you will defend.

Which offer books more appointments once you run the real math?

Here is an illustrative run of the same $3,000 in Meta spend across both offers, using typical industry ranges. Your own numbers will differ, but the shape of the math almost never does.

MetricFree estimate adBallpark price ad
MetricLeads from $3,000Free estimate ad60Ballpark price ad38
MetricCost per leadFree estimate ad$50Ballpark price ad$79
MetricAppointments setFree estimate ad24 (40%)Ballpark price ad23 (60%)
MetricCost per set appointmentFree estimate ad$125Ballpark price ad$130
MetricSat rateFree estimate ad65%Ballpark price ad80%
MetricAppointments satFree estimate ad15.6Ballpark price ad18.4
MetricCost per sat appointmentFree estimate ad$192Ballpark price ad$163
MetricClose rate on sat appointmentsFree estimate ad30%Ballpark price ad35%
MetricJobs closedFree estimate ad4.7Ballpark price ad6.4
MetricCost per acquired jobFree estimate ad$638Ballpark price ad$469

Same spend. Fewer leads. More jobs.

The free estimate ad wins on every metric a homeowner can see and loses on every metric that pays your crew. Cost per lead is a scoreboard for the marketer. Cost per acquired job is the scoreboard for the business.

If you want to run your own version of this against your actual close rate and average ticket, the ROI calculator does the arithmetic in about ninety seconds. The companion math on what you can afford to pay in the first place is in our guide to cost per lead.

How do you put a price in an ad without losing the appointment?

There is a wrong way to do this, and it is quoting. A number with no context invites comparison shopping. A number with a reason invites a conversation. Use one of these four structures.

  1. Range plus the variable. "$12,000–$22,000 depending on square footage and material." The homeowner now knows the number moves and knows what moves it, which is exactly the question your rep wants to answer in person.
  2. Price per unit. "$12–$25 per square foot for stamped concrete." Useful when project size varies wildly. Homeowners can do rough math themselves, which feels like transparency instead of a sales gate.
  3. Starting-at with a real floor. "Replacements start at $8,400 for a standard single-story home." Only works if that number is real and you will honor it on the right job.
  4. Monthly payment framing. "Most of these projects finance between $180 and $340 a month." Strong on high-ticket remodels where the lump sum scares people out of a project they could actually afford. Say it is financing, never imply it is the price.

In all four cases, the next line of the ad does the real work: tell the homeowner what happens next and that a person is coming to the house to measure and price it. An on-site estimate is a sales appointment. Say so plainly. You lose the people who were going to cancel and you keep the people who were going to buy.

When should you run the free estimate offer instead?

There are real cases where free estimate is the correct call.

  • Emergency and damage work. Storm roofing, active leaks, no heat, no power, water in the basement. Urgency beats pricing every time.
  • Insurance-driven jobs. The homeowner is not paying your number directly, so publishing one confuses the conversation.
  • Brand-new ad accounts. Sometimes you need volume to teach the pixel who converts. Run free estimate for the first few weeks, then layer pricing in once the account has data.
  • Trades with enormous scope variance. Whole-home remodels where the honest range is $25,000 to $200,000. A range that wide communicates nothing.
  • Low-ticket, high-frequency work. When the job is $300, the price is not a barrier and the friction is not worth it.

Everywhere else, especially on considered purchases between roughly $5,000 and $50,000, a price-anchored offer usually produces better appointments.

Can you run both offers at the same time?

Yes, and most of the accounts that scale well do exactly that. Treat it as two jobs, not one test you eventually declare a winner in.

  1. Split the budget 50/50 for at least three to four weeks. Shorter than that and you are reading noise.
  2. Hold everything else identical. Same geography, same audience, same landing page structure. Offer is the only variable.
  3. Track to sat appointment, not set appointment. Set is easy to inflate. Sat is the truth.
  4. Tag every lead by offer in your CRM. If you cannot tell which ad produced a signed contract, you are not testing, you are guessing.
  5. Rebalance monthly, do not kill. Shift budget toward the better cost per acquired job and keep a smaller allocation on the other offer. Volume and quality campaigns feed different parts of the pipeline.
  6. Rewrite the loser before you retire it. Nine times out of ten the offer was not wrong, the number or the reason attached to it was.

If you want this run for you in your own ad account, with the offer tested and the appointments set on your calendar, that is exactly what our appointment setting program does.

What ruins either offer after the lead comes in?

Speed. Nothing else is close.

A price-qualified lead that sits for four hours is worth less than a free estimate lead called in ninety seconds. The homeowner who raised their hand on a $22,000 number is a high-value prospect precisely because they are serious, and serious homeowners contact more than one company. Research on response time consistently shows you are far more likely to qualify a lead contacted within five minutes than one contacted at thirty, and a large share of sales go to whoever responds first. Our breakdown of speed to lead lays out the staffing side of that.

The second killer is contradiction. If your ad says $12,000 to $22,000 and your rep opens with "well, it really depends," you just taught the homeowner the number in the ad was bait. Whatever the ad promised, the call, the confirmation text, and the appointment itself have to repeat it in the same words.

The short version

  • Free estimate wins cost per lead. Ballpark pricing usually wins cost per acquired job.
  • Publish a range with a reason, not a quote. The reason is what gets you in the door.
  • Price-anchored offers raise sat rate, which is the metric that actually feeds crews.
  • Keep free estimate for emergency, insurance, and brand-new accounts.
  • Run both, split the budget, measure for a month, and rebalance on cost per acquired job.
  • None of it matters if the lead sits. Call in minutes, not hours.

If you want this installed in your own Meta ad account — your brand, your pixel, your audience, with exclusive leads and appointments priced per result instead of a monthly retainer — get started here and we will show you the live numbers for your trade and market.

Frequently asked questions

Should contractors put prices in their Facebook ads?

Usually yes, as a range with a reason attached rather than a single number. A range like roof replacements in this area typically run $12,000 to $22,000 depending on size and material filters out homeowners who were never going to spend that, and the leads who still raise their hand have already accepted the number before your rep calls.

Does a free estimate offer still work in 2026?

It works, but it is the weakest offer in the market because every competitor runs it and homeowners read it as a sales visit. It performs best when paired with a specific reason to act now, a named scope, or a condition the homeowner already knows they have, and it performs worst as a standalone headline on a high-ticket job.

Which offer gets a lower cost per lead, free estimate or ballpark price?

Free estimate almost always wins on cost per lead because it asks nothing of the homeowner. Ballpark pricing typically costs more per lead but converts a higher share into set and sat appointments, so it frequently wins on cost per acquired job, which is the number that pays for your crew.

Will posting a price range scare homeowners away?

It scares away the homeowners who were going to cancel the appointment anyway once they heard the number. The ones who stay are pre-qualified on budget, which raises your sat rate and shortens the sales call. The risk is anchoring too low, so publish the honest working range rather than the cheapest job you ever did.

How do I test free estimate against ballpark pricing in my own campaigns?

Run both offers at the same time with equal budget for at least three to four weeks, then compare cost per set appointment, sat rate, and cost per acquired job rather than cost per lead. Keep targeting, geography, and the landing page identical so the offer is the only variable being tested.

Related Articles

Lead Generation

Sod, Irrigation and Full Landscape Design Leads: Which Offer to Run First

Lead Generation

Vinyl vs Wood vs Aluminum Fence Leads: Which Offer Fills the Schedule Faster?

Lead Generation

Cabinet Refacing vs Full Kitchen Remodel Leads: Which Offer Should You Advertise?