Every cleaning pro who buys leads gets a bad one eventually — a disconnected number, a request from two towns over, someone who swears they never asked for a cleaning. The question is not whether bad leads happen. It is whether you get your money back when they do. This is the playbook: which leads are legitimately refundable, how to document and request a refund before the window closes, and why a fair refund policy is one of the quietest protectors of your margin.
What actually makes a lead refundable
Not every lead you fail to close is a bad lead. A customer who picks another cleaner, ghosts you after a quote, or decides to clean their own house is a normal part of the business — that is your close rate at work, not a refund. A genuinely refundable lead is one that was never a real, reachable job in your area to begin with. Across the major platforms, four reasons come up again and again:
Wrong or out-of-service phone number. The number is disconnected, fake, or belongs to someone who has no idea why you are calling. Thumbtack lists invalid phone numbers as refundable, and Angi credits leads where "the phone number isn't in service or doesn't belong to the consumer" (Thumbtack Help, Angi Lead Credit Guidelines).
Out of your service area. The job is in a ZIP code you do not serve. Angi explicitly credits leads "submitted with the wrong zip code" when the correct ZIP is outside your profiled area (Angi Lead Credit Guidelines).
Never requested service. The person never asked to be contacted, or the "lead" is a spam, bot, or robocall submission. These are some of the most commonly disputed reasons across home-services platforms (Camp Digital).
Duplicate. The same customer for the same job lands in your inbox twice. On Thumbtack, a lead from the same customer for an identical job within 45 days is refundable; Angi credits when "the same consumer submits the same request twice" (, ).
Luciano Rezende · Founder, CleanerFlow
Luciano founded CleanerFlow after years building tools for residential cleaning professionals. He writes about the economics of getting clients, pricing jobs, and running a cleaning business that lasts.
Ready to test?
Apply to buy leads on CleanerFlow Leads. Cap of 3 buyers per lead, refund on aged leads, score before pay.
Memorize those four. They are the line between "I didn't close it" (your problem) and "this was never a real job" (theirs).
Document like you'll have to prove it — because you will
Here is the uncomfortable truth: stated policies are generous, but approval is not automatic. Contractors widely report denial rates of 30–50% on disputes they believe are legitimate, and Thumbtack pros have complained for years that the written policy and the actual outcome do not always match (Thumbtack Community). Documentation is what turns a "case-by-case discretion" decision in your favor.
Build the habit of capturing proof the moment a lead looks bad:
The lead ID and timestamp. Every platform indexes disputes by lead ID. Without it, support cannot even find the charge.
Your call attempts. Screenshot your call log showing the dialed number, the date, and the result — "disconnected," "no longer in service," voicemail that names someone else.
The reason, in one clean line. "Number disconnected, two attempts, see screenshots" beats a paragraph of frustration every time.
Anything that proves out-of-area or duplicate. The ZIP on the request next to your service map; the earlier lead ID for the same customer.
Do this the same day. Memory fades, call logs roll over, and — critically — the clock is already running.
Refund windows are real deadlines, and they are not long. Angi and HomeAdvisor require credit requests "within 45 days of the date that the charge was incurred," and many practitioners recommend submitting within 24–48 hours while the evidence is fresh (Angi Lead Credit Guidelines). Thumbtack also works on a 45-day window for most situations (Thumbtack Help). Google's Local Services Ads credits invalid leads — spam, wrong number, duplicate — and aims to process them within a set window as well (BG Collective).
A simple weekly routine beats a scramble. Once a week, review every lead you couldn't reach, file the refundable ones with your screenshots attached, and note the date you submitted. If a request is denied and you believe it qualifies, escalate it — a polite, documented second request to a supervisor reverses a meaningful share of first-pass denials.
Why a fair refund policy protects your margin
A refund is not a favor — it is the mechanism that keeps your cost-per-job honest. If you pay for a lead with a dead number and never get that money back, your real cost per booked job quietly rises, and every pricing decision you make on top of it is wrong. We've written before about how to think about how much to pay for a lead; that math only holds if you are paying for real leads. A platform that refunds the bad ones is effectively lowering your true acquisition cost to match the leads that were actually workable.
This is also why the structure of a lead source matters as much as the headline price. A source that caps how many pros get the same lead — the reason we explain why we cap at three — combined with a fair refund policy means you are paying for fewer, more workable leads, and getting credited when one slips through bad. The opposite — unlimited sharing plus a grudging refund process — is how a "cheap" lead channel quietly bleeds your margin.
How CF Leads handles refund-eligible and aged leads
We designed our refund approach around one idea: you should only pay for a lead that was real and reachable. The four classic reasons — wrong or out-of-area number, out of your service area, never requested service, and duplicate — are refund-eligible, full stop. You don't need to argue the close; you need to show the lead was never a real job, and the documentation habits above make that fast.
Aged leads get the same fairness. A lead that sits unworked past its useful life is not the same asset it was the hour it came in — the customer has very likely hired someone else. Rather than charging full freight for a lead that has gone cold through no fault of yours, refund-eligible aged leads are handled so you are not paying full price for demand that has already moved on. The principle is consistent with everything else we believe about lead quality: a lead is worth paying for when it is real, reachable, and yours to win. When it stops being those things, you shouldn't be carrying the cost.
A quick dispute checklist
Keep this where you file leads:
Is it genuinely refundable — wrong/out-of-area number, out of area, never requested, or duplicate? If it's just "didn't book," it's not a refund.
Screenshot the call log and note the lead ID and timestamp.
File within the window — same day if you can, and never past the 30–45 day limit.
State the reason in one clean line, with evidence attached.
If denied and you're confident it qualifies, escalate once, politely, with the documentation again.
Track your approval rate over time so you know which sources actually stand behind their leads.
Handled this way, bad leads stop being a slow leak and become a managed, recoverable cost. The pros who lose money to bad leads are almost never the ones who got unlucky — they're the ones who never documented, never filed, or filed too late. Make the playbook a habit and your real cost per booked job stays exactly where your pricing math says it should be.
For the bigger picture of where steady work comes from — leads, referrals, and the channels you own — read how to get cleaning clients.