Write three offers (house wash, driveway, deck) with AI, pair each with a real before-and-after photo, and run them together at $10 to $20 a day for 7 to 14 days, so $70 to $280 in total. That is enough to see which offer draws quote requests, not enough to judge Facebook as a channel.
AI writes and varies the words; it should never touch the photos. Meta's own ad tools can adjust brightness and contrast, or generate new pixels to fit a placement, unless you switch those settings off. A cleaner-looking "after" that is not real loses the job the moment the customer sees the surface.
The budget sum before the first ad
Start with what a lead is worth to you, because that sets the ceiling on what you can pay for one. Take an illustrative crew whose average job is $300 and whose margin is 55 per cent, meaning what is left after fuel, chemicals and crew pay. That is $165 of profit a job. If 25 per cent of the people who send a quote request end up booking, a lead is worth $165 times 0.25, or about $41. Pay more than that per lead and every job loses money; aim for half of it, around $20, so there is room for the quotes that never convert.
Now put the test budget through that sum. Fourteen days at $15 a day is $210. The table shows what $210 buys at four different costs per lead. All figures are illustrative.
| Cost per lead | Leads from $210 | Jobs at 25% | Profit at $165 a job | Result after the $210 spend |
|---|---|---|---|---|
| $12 | About 17 | 4.4 | $722 | Up $512 |
| $20 | About 10 | 2.6 | $433 | Up $223 |
| $35 | 6 | 1.5 | $248 | Up $38 |
| $50 | About 4 | 1.0 | $173 | Down $37 |
Three details from Meta's own help pages change how you read that table. First, a daily budget is a target over a calendar week, not a promise for each day. Meta says it may spend up to 75 per cent over the daily figure on a day with good opportunities, and the week's total will not exceed seven times the daily budget. At $15 a day, a single day can reach about $26 and the week is capped at $105. Read the details on Meta's page about daily budgets.
Second, Meta's help page on the learning phase says an ad set usually settles after about 50 results in the week after its last significant edit. At $20 a lead, 50 leads in one week would cost $1,000, so a $15-a-day test will never get there. That does not make it pointless. It means costs will be bumpy, you should change nothing while it runs, and you judge it by whether leads arrive at a price you can afford, not by how steady the graph looks.
Third, if you choose the cost-per-result goal bid strategy, Meta advises a daily budget of at least five times your goal; its own example is a $5 goal needing $25 a day. A $20 goal would mean $100 a day, which is the wrong size for a first test, so leave that setting alone at the start. Minimum budgets also vary by country and objective, and Ads Manager shows an alert if yours is too low.

The Complete Excel Course with AI Integration
From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.
By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner
Buy nowThree offers, three angles: house wash, driveway, deck
One ad cannot speak to someone who wants the green streaks off their walls and someone who wants the black patches off their drive. Each offer gets its own ad, its own photo and its own question on the form. Prices come from your rate card, which the pressure washing pricing tutorial shows how to build. A "from" price is honest only if jobs at that price can really be booked.
| Offer | Hook (example) | Price anchor (illustrative) | Form question | Risk to manage |
|---|---|---|---|---|
| House wash | Green and black streaks off the walls, with no scrubbing by you | Whole-house wash from $349 | One, two or three storeys, and the wall material | Sizes vary most here, so the quote must come from photos |
| Driveway and paths | Black patches and tyre marks gone in an afternoon | Driveway and path clean from $179, up to a two-car drive | Number of cars it holds, and whether there are oil stains | Some stains do not fully lift, so say what to expect |
| Deck and patio | Get the deck ready before the first barbecue | Deck clean from $229 | Wood, composite or stone, and rough area | Wood can be damaged by the wrong pressure, so quote only after photos |
Keep the copy about the surface, not the person. Meta's standards bar ads that assert or imply personal attributes such as age, health or financial status, so "Too old to scrub your own patio?" breaks the rule, while "Black patches on the driveway?" keeps the copy on the surface.
Photos first: before-and-afters that survive a close look
Everything else rests on the pair of photos, and they are cheap to take well. A customer who sees the job in person will compare it with your ad, so the ad has to be a fair picture of the work.
- Same spot, same angle, same height. Stand where you stood for the first shot. A pair taken from two positions looks like a trick even when it is not.
- Same light. A shaded before and a sunny after exaggerates the difference. If the light has changed, wait, move or reshoot.
- Dry after, if you can. Wet concrete and brick look darker and richer. Photograph the after when it has dried, or say it was taken wet.
- Include something fixed. A door, a downpipe or a paving joint lets a viewer see it is the same place.
- The stripe shot. A driveway with one cleaned strip beside the dirty surface is a before-and-after in one frame, and it is hard to argue with.
- Shoot before you touch anything, save the originals untouched, and name each file with the job number plus "before" or "after".
- Crop out what identifies the house: the number, number plates, faces and anything on the doorstep. Get the customer's permission, which a one-line text can cover.
Meta settings that can change your photos
Meta's Advantage+ creative tools can optimise your images and text for different placements. Meta's page on Advantage+ creative says some enhancements may be turned on by default and that you can turn them off at any time. Several of them change pixels, which is the last thing a before-and-after wants. These are the ones to check on every ad, using the names on that page.
| Setting | What Meta says it does | My rule for before-and-after ads |
|---|---|---|
| Adjust brightness and contrast | Adjusts the image's brightness and contrast if that may improve performance (single image ads) | Off. It can make the after look cleaner than it is |
| Visual touch-ups (AI), and Video touch-ups (AI) for video | Crops and expands media to fit more placements, generating new pixels when it expands an image or a video | Off. Generated pixels are not your driveway |
| Image generation (AI) | Creates variations of your creative, including generated backgrounds and text | Off for real job photos |
| Add animation (AI) | Adds movement such as panning and zooming to an image | Off, or preview carefully; zooming can hide the surrounding context |
| Add video effects (AI) | Transforms video with higher contrast and more vibrant colours | Off for any video of a real clean |
| Text improvements and Enhance media text (AI) | Rephrase or rearrange your words and text overlays; the visual creative is not changed | Allowed, but read every variation in the preview |
| Show summaries (AI) | Adds an AI-generated summary of your selling points in the feed | Check it for claims you did not write |
Settings and labels move around in Ads Manager, so treat the table as a checklist of what to look for rather than a screen map. Preview every placement before you publish. Meta also says images created or significantly edited with its generative AI features may carry an "AI info" label, which is one more reason to keep real photos untouched. Its standards also prohibit deceptive or misleading practices, and ads can be reviewed again at any time, so an exaggerated after is a risk to the account as well as to the job.
What AI should and should not do with the creative
The rule is simple: AI handles words and choices, and a person handles pixels. In practice:
- Fine for AI: drafting copy and headline variants, writing the "Before" and "After" labels, suggesting which of five photo pairs shows the clearest difference, writing alt text, and pointing out anything in a photo that identifies the house.
- Not for AI: generating a cleaner after, removing stains digitally, brightening the sky, greening the lawn, or "enhancing" either image. That includes the built-in tools in other apps.
Use one test for every edit: if the customer stood next to the surface and compared it with the ad, would they feel misled? Plain cropping to fit a frame passes. Anything that changes how clean the surface looks fails. Google's own guidance for Business Profile photos draws the same line, asking for images that are in focus, well lit and with no significant alterations or excessive filters, so that the image represents reality. If you do ask a chat assistant to compare photo pairs, treat its answer as a second opinion. It can miss a visible house number, so check the crops yourself.
Writing the ads: a prompt, a draft and the edits
The prompt below gives the AI your real proof and a list of things it may not do. The "claims to prove" line at the end turns the AI into a reviewer of its own copy.
Write Facebook ad text for a small pressure washing business. Plain, everyday English.
Business: [business name], two-person crew, serving homes within about [10] miles of our base
Offer: driveway and path clean from $179 (up to a two-car driveway), price confirmed from photos
Proof I can show: a real before-and-after photo of a concrete driveway, same spot and angle, no filters, 50 minutes of work
Audience: homeowners
Goal: quote requests through a form that asks for the street address
Rules: no guarantees, no "best" or "number one", no claims about results I cannot show, no statements about the reader's personal circumstances, no discount unless I state one, no emoji, no hashtags
Write: 3 primary texts (the first line must work on its own, because longer text gets cut off), 3 headlines of 40 characters or fewer, and 2 one-line descriptions. Then list every claim in your text that I would need to be able to prove.
A realistic first draft might come back like this (illustrative):
Primary text 1: Black patches and tyre marks on the driveway? Send two photos and we will quote from them. Driveways and paths from $179 (up to a two-car drive). Most are done in under an hour.
Primary text 2: Same driveway, same spot, same camera angle, 50 minutes apart. No filters. Want to see what yours could look like? Request a quote and send two photos.
Primary text 3: Cleaner driveways, no mess left behind. Fully insured and guaranteed.
Headlines: Driveways from $179 / Quote from two photos / See the same spot, cleaned
Descriptions: Real photos, no filters. / Reply with two photos for a quote.
Claims you would need to prove: "most are done in under an hour"; "fully insured"; "guaranteed".
Here is what I would change. "Guaranteed" goes, because the rules said no guarantees and the draft slipped. "Fully insured" stays only if you can show the certificate. "Most are done in under an hour" becomes "Our last driveway like this took 50 minutes", which you can prove. "Cleaner driveways, no mess left behind" is vague and a little boastful, so replace it with the specific text from variant 2. Variant 2 is the strongest because it describes the photo honestly, so lead with that and make the rest support it.
Meta's tools can also generate up to five variations of primary text and headline from what you write, according to its Advantage+ creative page. The same editing rule applies to every variation: read it, and delete anything you could not defend to a customer. If you want more prompt ideas for local offers, eight ChatGPT prompts for a local Facebook offer are worth a look.
Setting up the test: one campaign, three ads
- Create one campaign with a leads objective, one ad set and three ads. Each ad has its own offer, copy and photo. Build all three before launch, because Meta lists adding a new ad to an ad set as a significant edit that restarts learning. The local business Meta ad setup tutorial covers the account and payment steps.
- Choose where the lead goes. For a first test the instant form, which opens inside Facebook, is the simplest. You can also send people to your own quote page or to Messenger.
- Set the location as a radius around your base, sized to a sensible day's driving. Leads can still arrive from outside it, because people travel and location signals are imperfect, so ask for the street address in the form and politely decline anything out of range.
- Set the budget at $15 a day with an end date 14 days out, so the test cannot run on by accident.
- Switch off the enhancements that change pixels, then preview every placement.
- Leave it alone for the first seven days. Meta counts any change to targeting or creative as a significant edit.
- Answer every lead yourself, within minutes. The ad only buys the enquiry; replying quickly is what turns it into a job.
Three ads in one ad set is a simple test, not a clean one. Meta decides how to share the budget between ads, so spend per ad will not be equal, and what you learn is which ad it favoured and which gets replies. For a clean comparison, Meta's A/B testing tool splits the audience evenly into comparable groups, and Meta recommends the same budget for both versions. Meta also advises against informal testing by switching ad sets on and off, because audiences can overlap. At this budget a formal split halves your data, so use the three-ad round to find the best offer, then run a formal A/B test on that offer's photo, perhaps the side-by-side pair against the stripe shot, for at least seven days. The wider habit of testing small is covered in testing ad variations with AI on a small budget.
Form questions that filter before you drive out
A form with too few questions fills your phone with leads you cannot quote. A form with too many loses people. Six fields strike the balance: name, mobile number, street address, which service (house, driveway, deck or more than one), rough size using the descriptors in your ad, and a line asking what the problem is. The reply, not the form, asks for photos.
Add a consent line under the phone field, something like: "By sending this you agree we may text you about this quote. Reply STOP to opt out." Consent for texting is covered in the reply tutorial, and sending Facebook lead ads to a Google Sheet shows how to get an alert the moment a form arrives. Check yourself that the alert works by submitting a test lead before you spend a dollar.
Reading the results at day 7 and day 14
Count replies and booked jobs, not clicks or impressions. Then compare cost per lead with the ceiling you worked out at the start, which in the example was about $41.
| What you see | What it suggests | What to do |
|---|---|---|
| Cost per lead around $20 or lower, and leads are replying | The offer works at a price you can afford | Keep it. Raise the budget in steps of no more than about 20 per cent; Meta's own example is that a $100 to $101 change is unlikely to restart learning, while a tenfold jump may |
| Cost per lead between $20 and $41 | Profitable but thin | Change one thing only, the photo or the first line, and accept that learning restarts |
| Cost per lead above $41 after at least seven leads | Each job loses money at your close rate | Stop that ad. Try a different offer or a tighter radius |
| No leads after about $100 of spend | Often a delivery or form problem, not the audience | Check reach in the report, submit a test lead, and read the ad as a stranger would |
| Plenty of leads, few replies to your quote | The form is attracting people who are not buying | Add a price anchor to the ad and a size question to the form |
Mistakes that cost money in the first fortnight
- Editing during the test. A new photo on day three restarts learning and muddies the comparison.
- Leaving enhancements on. The first sign is an after photo that looks oddly vivid. Check the preview before launch, not after.
- A radius wider than you can serve. You pay for leads you then refuse.
- Slow replies. A lead answered after a day has usually been answered by someone else already.
- Judging on clicks. Clicks are cheap and do not book jobs.
- Using stock photos of clean driveways. They do not look like the customer's, and the mismatch shows when you arrive.
When the test finishes, write the three numbers on one line: money spent, leads received, jobs booked. That line is worth more than any dashboard. Decide, with the break-even sum in front of you, whether the next fortnight's budget goes to the same offer, a new photo or no ads at all.
Questions about running your first pressure washing ads
How many leads do I need before I trust a result?
There is no magic number at this budget. Meta says ad sets usually deliver stably after about 50 results in a week, which a $15 daily budget will not reach. As my own rule of thumb, treat fewer than ten leads per ad as a hint rather than proof. Ten leads is enough to drop an obviously weak offer, not to crown a winner by a few dollars.
Can I use AI-generated images of clean driveways?
Not for before-and-after ads. Customers judge you by the surface they see, so the image has to be a real job. Meta's tools may also label significantly edited images with AI info, and its standards prohibit misleading practices. Use AI for words, for deciding which photo pair to use, and for spotting details to crop out.
What if Meta rejects an ad?
Edit the ad or create a new one that follows the policy. Meta says review usually finishes within 24 hours but can take longer, and ads can be reviewed again at any time. If you think a rejection was wrong, you can ask for a review in Account Quality. Check the copy for claims you cannot support first.
Do I need a website to run these ads?
No. A Facebook Page and an instant form inside Facebook can collect the request. A simple quote-request page helps later because you control the questions and can see where requests came from. Start with whichever route lets you reply fastest, since the first reply decides more than the form does.
Further reads
- Pressure Washing Marketing Ideas: Neighbour Offers and Posts With AI — Neighbour offers and job photos turned into posts without paying for clicks
- Roofing Facebook Ads: Copy and Audiences Tested With AI on a Small Budget — Copy and audiences tested on a small budget in a related trade
- Carpet Cleaning Facebook Ads: Write and Test Offers With AI — Offer-led ads for another home cleaning service
- Bathroom Fitter Marketing: Before-and-After Posts From Job Photos With AI — Before-and-after posts from job photos, in another trade
- Car Detailing Promotion Ideas: Seven Before-and-After Posts With AI — Seven before-and-after post ideas from a detailing business
- AI for Meta Ads: What Agencies Hand to Advantage+ and What They Keep — What Advantage+ automation takes over and what stays with you
- Can AI Help a Roof Cleaning Business? Photo Quotes and Safety Notes — Which roof cleaning jobs AI can take (replies, photo requests, captions, rebooks) and which safety checks must stay human.
- Can AI Write a Pressure Washing Contract? What to Check — AI can draft the first version of a pressure washing contract; the access, damage and payment clauses are the ones to check before a lawyer sees it.
- Best AI for Advertising: A Small Agency's Creative Testing Pipeline — A brief-to-variants-to-test-grid pipeline for small agencies, with prompts, sample output, a policy check and the sums behind a test budget.
- Tutoring Facebook Ads: Parent Messaging and Lead Forms With AI — Three AI-drafted ad variants for parents, a short lead form, a follow-up message and a small monthly budget table for a tutor.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: Meta's business help articles on daily budgets, minimum budgets, the learning phase, significant edits, ad review, A/B testing and Advantage+ creative; Meta's Advertising Standards introduction; Google's Business Profile photo guidelines.