Your media buyer blamed Sunday. The real problem is in the frequency column.
Agencies that can't explain their results will explain the calendar instead. "Sunday's always slow." "People don't fill out forms on long weekends." "We'll see the numbers pick back up mid-week." It sounds plausible enough that most contractors accept it, pay another week's retainer, and wait.
The problem isn't your calendar. It's that by the time leads stop coming in, the campaign has usually been running the same creative long enough that your target audience has seen it three, five, eight times. They've stopped converting not because of the day of the week, but because the ad has worn out. That's ad fatigue, and it shows up in the numbers before it kills your lead flow. A media buyer watching the right columns would see it coming.
What ad fatigue actually is
Ad fatigue happens when the same people see the same ad too many times. Meta's algorithm will keep serving an ad as long as there's budget, but the audience's response changes over time. Clicks drop. Cost per result climbs. Eventually, leads stop coming in.
The mechanism is simple: Meta targets a defined audience. That audience has a finite number of people who haven't seen your ad yet. Once most of them have seen it once or twice, the algorithm keeps serving it to the same people who already ignored it the first time. Repeating exposure to an audience that already passed on the ad doesn't produce new leads. It just burns budget.
What makes this relevant to you isn't the concept. It's that this process is completely visible in the campaign data. It doesn't require a guess or a calendar theory. The numbers tell you directly.
The columns that show it
Frequency is the first place to look. In Meta Ads Manager, frequency is the average number of times each person in your audience has seen a particular ad. A frequency of 1.0 means each person has seen it once on average. A frequency of 4.5 means people are seeing it repeatedly.
There's no universal hard cutoff, but in direct-response campaigns for local services, performance typically starts degrading once frequency climbs past 2.5 to 3.5. You'll often see cost per lead rising before you notice lead volume dropping, because the people most likely to convert already have, and the algorithm is now paying to reach the same skeptical remainder of the audience over and over.
The second column to watch is cost per result. If cost per lead was $18 in week one and is $41 in week four on the same creative, that's the signature. Frequency goes up, cost per result goes up, lead volume goes down. Those three things moving together is ad fatigue. It's not a mystery, and it doesn't look like "Sunday drop-off."
Reach relative to audience size is worth checking too. If your campaign has reached 80 or 90 percent of the defined audience, there aren't many new people left to show the ad to. Frequency climbing alongside high audience saturation is a clear signal that the creative needs to be refreshed or the audience needs to be expanded.
Why agencies miss it or avoid naming it
Some media buyers genuinely don't monitor these metrics closely enough. Managing one campaign for one contractor at $400 a month isn't the same margin structure as managing large budgets where sophisticated reporting tools are standard. Corners get cut.
Some know exactly what's happening and find it easier to blame external variables, because ad fatigue is an admission that the creative needed to be refreshed sooner. That's a workload conversation an agency running on thin margins doesn't want to have.
Either way, the contractor pays for it. If you've heard a version of "the algorithm needs more time," "the market's soft this month," or "let's wait until the seasonality passes," and those explanations arrived right around the time your lead volume dropped off, go pull the frequency column on your own campaign. If you have access to the account, the data is there.
This is one reason ASN runs campaigns inside the client's own Meta Ads Manager rather than an agency-owned account. When the account is yours, you can see the frequency column, the cost per result trend, and the audience saturation rate yourself. You don't have to take anyone's word for what the data says.
What an actual fix looks like
Refreshing creative before fatigue fully sets in is the straightforward answer, and it's more mechanical than creative. You don't necessarily need a new concept. Changing the first three seconds of a video, swapping the static image, updating the headline, or testing a different hook against the same offer is often enough to reset how the algorithm treats the ad and expand the pool of people who engage.
The Safe Step campaign is a useful reference point here. That campaign produced 247 leads at $11 cost per lead on $2,800 in total spend. Numbers like that don't hold without active management. An $11 cost per lead in a local service category requires someone watching what's happening and making adjustments before the frequency curve kills performance. That kind of result doesn't come from setting a campaign live and explaining away the slow days.
For HVAC, roofing, painting, epoxy, or most home service categories, sustainable cost per lead targets are achievable, but not if the creative is sitting untouched while frequency climbs and the media buyer is watching a different set of metrics or none at all. The audience is local and finite. A 30-mile radius around a mid-size city might be 200,000 people. Saturate that audience with one piece of creative and you've used it up.
The practical standard: frequency should be monitored weekly on any active campaign. Creative refreshes should happen before frequency exceeds the range where cost per result starts climbing, not after leads have already stopped. If your agency can't tell you what their current frequency is on your campaign, or gives you a day-of-week explanation when you ask why leads dropped, that's the answer.
What to do with this
If you're evaluating whether to try Meta ads again after a bad experience, the frequency column is a reasonable test question for any agency you're considering. Ask them how they monitor ad fatigue on local campaigns. Ask what frequency range they target before refreshing creative. A media buyer who knows the answer will tell you immediately. One who doesn't will change the subject.
ASN runs managed Meta campaigns for home service contractors with no setup fee and no contract. If you want to see how an active campaign is being managed before you commit to anything, the contact page is the right place to start.
ASN manages Meta ads for home service contractors with no setup fee and no contract. If you want to see what this looks like for your trade before committing to anything, the contact page is the right next step.
See how it works for your business