A Google Ads campaign that is not spending its full budget is doing one of two things. It is constrained — Google wants to spend more than you allow — or it is starved, unable to find enough eligible auctions to spend in. The two states look identical on a cost report and have opposite fixes. Raise the budget on a starved campaign and nothing happens at all. Raise bids on a constrained one and you buy the same traffic faster, not more of it.
Before either, there is a third possibility that accounts for most of the panic in this category: the campaign is not underspending. It is pacing.
The short answer
Your average daily budget is a monthly target, not a daily quota. Google can spend up to twice it on a busy day and a fraction of it on a quiet one, aiming to land near 30.4 times it over the month. Judge a budget on a calendar month, never on a day. If the month is genuinely short, one column tells you which half of this guide to read: Search lost IS (budget).
The rest of this post is a diagnostic tree, not a listicle. Three questions narrow the problem to a class of cause, then eight named causes each tell you the exact screen to open, what you will see there, and how long the fix takes to show up in the data. Work it top to bottom — the order exists because early causes make later ones unreadable.
The maths that makes most of this a false alarm
Almost every “my budget is not spending” question comes from reading a daily number as if it were a daily promise. It never was. Google’s own documentation on average daily budgets sets two ceilings and nothing in between:
- Your daily spending limit is two times your average daily budget, for most campaigns. A £50 budget can legitimately spend £100 on a Tuesday.
- Your monthly spending limit is 30.4 times your average daily budget — 365 days divided by 12 months. A £50 budget is really a £1,520 monthly instruction.
Between those two ceilings Google paces however it likes, spending into demand when demand is there and holding back when it is not. If served costs push you past the monthly limit, Google applies an overdelivery credit — you are not charged above the monthly figure. So the honest test is not “did today hit £50?” It is “did the month land near £1,520?”
72% of pace — Mild underspend. Worth one diagnostic pass. Usually targeting, negatives, or a bid target set slightly too tight.
A month landing inside roughly 85% of the monthly limit is normal pacing, not a fault. Below about 60%, something is actively holding delivery back and the rest of this guide applies. The band in between is worth one diagnostic pass — it is usually targeting, negatives, or a bid target set slightly too tight.
One caveat that trips people up mid-month: if you change the budget partway through, the monthly limit is recalculated from the day of the change, so the month-to-date comparison you were running no longer means what you think it does. Compare complete months, or complete weeks, and change one thing at a time.
Constrained or starved? The 60-second fork
Open the Campaigns table, click Columns → Modify columns → Competitive metrics, and add Search lost IS (budget) and Search lost IS (rank). That single pair of numbers splits every underspending campaign into two populations with nothing useful in common.
| Signal | Constrained | Starved |
|---|---|---|
| Search lost IS (budget) | Above 0% — often 10–40% | At or near 0% |
| Campaign status | Frequently “Limited by budget” | “Eligible”, or “Eligible (limited)” |
| Daily cost pattern | Climbs, hits a ceiling, stops | Trails along well under the cap all day |
| Impression curve | Flat-topped — cut off mid-day | Thin from open to close |
| What raising the budget does | Buys more of the same traffic | Nothing whatsoever |
| The actual question | Is the marginal traffic worth buying? | Why is there no supply to buy? |
Two Google statuses sit on the constrained side and are worth telling apart. “Limited by budget” means your average daily budget is below what would be needed to capture the impressions available at your current settings — a present-tense constraint. “Limited by budget soon” is a forecast: the budget simulator has spotted an expected traffic increase — usually seasonal — that would cost you 5% or more of weekly traffic at your current budget. The first is a decision. The second is a diary entry.
Neither status is automatically bad. Constrained is a good problem when the campaign is profitable at the margin and a bad one when it is not. That judgement needs cost per conversion by campaign, not a status label — which is exactly the ranking our optimisation queue does automatically, scoring each opportunity by what it is costing you rather than by how loudly Google flags it.
The decision tree
Three questions. Each one eliminates a whole class of cause, so answer them in order rather than jumping to the cause that sounds most like your situation.
Is the campaign actually underspending?
Campaigns → Cost, over one full calendar month
Normal pacing. Google spends unevenly by design. Nothing to fix — close the tab.
Real underspend. Go to question two.
Is it constrained, or starved?
Campaigns → Columns → Competitive metrics → “Search lost IS (budget)”
Google wants to spend more than you allow. Go to cause 1, then read what changes on 17 August 2026.
Google cannot find auctions to spend in. Go to question three.
Are your ads serving at all?
Campaigns and Ads → the Status column, plus account notifications
The eight causes, in diagnostic order
Ordered by how often they are the real answer and how cheaply you can rule them out — not by how interesting they are. Each card names the screen to open, because “check your targeting” is not advice.
Your bid strategy target is throttling delivery
Target CPA and target ROAS are efficiency instructions, not spend instructions. If the target sits below what the auction can realistically deliver, Google will leave your budget unspent rather than buy conversions above the number you gave it. This is the single most common cause of a campaign that used to spend and suddenly does not, and it is almost always self-inflicted.
Compare your target against the campaign’s actual CPA over the last 90 days. If the target is materially below the historic average, it is not attainable at volume. Google’s guidance on low traffic with Target CPA bidding is to raise the target; the practical version is to move in 10–20% steps and let each step gather 20–30 conversions before you judge it. Portfolio strategies add a second trap: a maximum CPC bid limit set on the portfolio silently caps every campaign inside it, and nothing in the campaign view tells you.
There are not enough eligible auctions to spend in
Filter your keywords by status and look for Low search volume. Google assigns it to keywords with very little search history worldwide over the previous twelve months and stops them entering the auction entirely. It is unrelated to your bid, your Quality Score, and your creative, so editing those changes nothing. The status reverses on its own if volume returns.
The structural version of this problem is a keyword list that is simply too small or too tightly matched for the budget attached to it. A tidy exact-match account with forty keywords and a £200 daily budget is not a budget problem, it is an inventory problem. Broaden match types deliberately, one ad group at a time, and watch the search terms report closely for the first fortnight — the traffic you add this way needs policing, which is the subject of the search terms section of our audit checklist.
Performance Max has its own version of this. Where a product feed is involved, PMax leans heavily on Shopping inventory, so disapproved products, an expired feed, or listing groups that leave every asset group fighting over the same handful of SKUs will cap what the campaign can spend regardless of the number in the budget field. Thin asset groups do the same thing from the creative side. Check the Listing groups tab against campaign-level spend before assuming the budget is the problem — a pattern we see constantly in ecommerce accounts.
Your targeting is narrower than you think
Targeting constraints compound quietly. A tight radius around a single postcode, a language setting that does not match how your customers’ browsers are configured, an observation audience accidentally set to Targeting rather than Observation, a device bid adjustment left at −100% from a test two years ago: each is defensible on its own, and stacked they can remove most of your available auctions.
Work through them as a list rather than by intuition. Check the Devices table specifically — a −100% mobile adjustment removes most search volume in consumer categories and appears nowhere as a warning — and re-read the location setting, where presence versus presence or interest swings eligible volume hard in either direction.
Your ad schedule is capping the hours
A campaign restricted to office hours has roughly a third of the day in which to spend a budget that Google prices as if it had all of it. If the schedule is deliberate — a phone-based sales team, a delivery cut-off — then the budget should be sized to the hours available, not to the notional day. Halving the schedule and keeping the budget produces an underspend that is arithmetic, not a fault.
Pull the Hour of day and Day of week reports and compare the shape of your impressions to the shape of your schedule. Where they match at the edges, the schedule is the ceiling. This one is worth setting an alert on rather than rediscovering quarterly — our anomaly detection baselines each account’s own rhythm, so a pacing shift against a known schedule surfaces as a message rather than as a month-end surprise.
Your own negatives are blocking you
Negative keywords take precedence over positive ones. If a negative matches a query that one of your keywords would also match, the negative wins and the ad does not show — and the keyword still displays as Active, with no conflict warning anywhere in the interface. A broad-match negative added to solve a problem in one campaign, then rolled into a shared list applied account-wide, is one of the most expensive silent failures in Google Ads.
Audit it properly: export the negative lists, export 90 days of search terms, and map which terms each negative would block. The over-blocking negatives tend to be single generic words — a lone free or cheap or a product category added as a phrase match — that made sense in their original context and stopped making sense the moment the account grew. If you would rather not do this by hand, it is one of the checks the Adszy MCP server exposes read-only to Claude and Codex, alongside budget pacing and search-term data. Teams running high-intent lead campaigns hit this hardest, which is why it shows up in our lead-gen workflows.
Ad Rank is too low to enter the auction
If most of your lost impression share is attributed to rank rather than budget, the budget is not the binding constraint and adding to it will change nothing. You are not losing auctions you entered; you are failing to enter them. Add the three Quality Score component columns — expected CTR, ad relevance, and landing page experience — and treat anything scoring “Below average” as the actual work item.
Check disapprovals in the same pass: a campaign whose only enabled responsive search ad is disapproved serves nothing while reporting a perfectly healthy budget. This is the diagnostic half of a proper Google Ads audit.
Serving is throttled by policy, not by you
Google’s Limited ad serving policy restricts impressions for advertisers it considers unqualified in certain contexts — the stated aim is to limit ads “more likely to result in negative ads experiences”. Individual ads are not disapproved, so nothing looks broken; the volume simply is not there. Google says affected advertisers with a meaningful proportion of impressions in scope receive an in-account notification, which is the notification everyone scrolls past.
The remedies are account-level rather than campaign-level: complete advertiser verification, keep branding consistent between your ads and your site, resolve outstanding policy issues, and use the appeals form where you believe the restriction is wrong. Separately, accounts without a properly installed Google tag have been flagged as limited, so confirm your tag is firing before you go looking for exotic explanations — broken measurement is also what starves Smart Bidding of the conversion signal it needs, as covered in the conversion tracking section of our checklist.
Billing has quietly stopped you
Check this whenever the drop is account-wide and dated rather than gradual. A declined payment stops ads running until it clears — some accounts get a short grace period, which is exactly long enough to make the eventual stop look mysterious. On monthly invoicing, exceeding your payment terms or credit line slows or stops delivery until overdue invoices are paid or the credit limit is raised.
While you are in there, check for an account-level budget or spend cap. A cap set during a quiet quarter and never removed will hold every campaign below its own budget indefinitely, and it is invisible from the campaign view. Adding a backup payment method costs nothing and removes the most common version of this failure permanently.
What changes on 17 August 2026
Dated section. From 17 August 2026, Google enforces target-based bid strategies more strictly for campaigns that are limited by budget. If you manage budget-limited campaigns on Target CPA or Target ROAS, this changes what “constrained” costs you.
Until now, a budget-limited campaign on a target-based strategy would often overperform its target: given less budget than the auction could absorb, Google concentrated spend on the cheapest available conversions and the actual CPA landed below the number you set. Plenty of accounts have quietly depended on that without ever naming it.
Google’s documentation on changes to target-based bid strategies states that from that date, budget-limited campaigns using a target-based strategy will “more consistently perform toward your bid target, including when you make budget adjustments”. Google’s own example is blunt: a campaign with a $10 Target CPA currently delivering a $5 actual CPA will deliver closer to $10.
The change covers Search, Shopping, Performance Max, Demand Gen, Display, Hotel and Travel campaigns; App, Video reach and Video view campaigns keep their previous behaviour. Google made a Bid Target Adjustment Tool available from 6 July 2026, surfaced through account-level notifications to advertisers whose campaigns carried a “Limited by budget” status over the previous twelve months while running an affected strategy.
What to do before the date, in order of importance:
- List every budget-limited campaign on Target CPA or Target ROAS. Filter by the “Limited by budget” status and cross-reference the bid strategy column. That is the affected population, and it is usually smaller than people fear.
- Compare each target against 90 days of actual performance. Campaigns comfortably beating their target are the ones that will move; campaigns already delivering at target will not notice.
- Decide deliberately rather than by default. Lower the target to match recent performance and you keep today’s efficiency. Leave it and you trade efficiency for volume. Both are legitimate — drifting into one because you did not look is not.
- Make the change once. Target and budget changes both disturb the bid strategy’s learning period, so batch them into a single edit.
If you would rather not audit this by hand across a portfolio of accounts, this is precisely the shape of work an AI Google Ads agent is good at: read every account, find the campaigns that match both conditions, rank them by how far actual performance sits from target, and draft the change for a human to approve. Adszy is read-only until you approve — nothing reaches the account without a yes.
Fix them in this order
Thirty minutes, once, beats a fortnight of ad-hoc changes — because sequencing keeps each result readable.
- Rule out the false alarm (2 min). Last complete month against average daily budget × 30.4. Within roughly 15%, stop here.
- Check billing and policy (3 min). Causes 7 and 8 first — if either is live, every other measurement you take is contaminated.
- Split constrained from starved (5 min). Add the two impression share columns.
- If constrained: price the marginal traffic (10 min). Check cause 1, then look at cost per conversion in the campaigns losing impression share to budget. Fund the profitable ones from campaigns that are not converting rather than from new money.
- If starved: work causes 2 to 6 in order (15 min). Targeting and negatives first — they reverse in a click. Ad Rank last, because it is the slowest to move.
- Then wait 7 to 14 days. Significant budget changes — roughly 20–30% or more — can restart the learning period. Judging after three days tells you about volatility, not about the change.
Then make it a habit rather than an incident. Pacing drifts continuously and silently, which is why it belongs in weekly reporting rather than quarterly firefighting.
Four things not to do
- Do not raise the budget when the loss is attributed to rank. You will pay more for the same number of auctions you were already failing to enter. Fix rank first — it lowers effective CPC, which often makes the budget sufficient without adding a penny.
- Do not raise bids when the loss is attributed to budget. The budget empties earlier in the day and you buy the same traffic at a worse price. This is the single most expensive mistake in this whole diagnostic.
- Do not change five things at once. Budget, target, match types, negatives and schedule all move delivery. Change them together and you will never learn which one worked — and you will have restarted the learning period into the bargain.
- Do not treat month-end catch-up spending as a bug. A campaign that has underspent often pushes harder in the final days as Google works toward the monthly limit. That is the system doing what it says it does. If those last-day conversions are poor, the problem is the pacing that preceded them.
Most underspend turns out to be one of three things: pacing that was never broken, a target set below what the auction can deliver, or a negative keyword doing far more damage than anyone intended. All three are cheap to find once you know which column to look at — and all three should surface on their own rather than wait for someone to go looking. That is the job we built Adszy to do: read the account, rank what it is costing you, draft the fix, and apply only what you approve. Ask it why a campaign underspent and it answers with the evidence attached. The free plan covers one account with no card, or watch it work end to end in the interactive demo first.

