Automations
Broken links alert
Request every URL the account advertises and report the ones that do not come back healthy.
A landing page that stops responding does not stop your ads. Google keeps serving them, you keep paying for the clicks and the visitor lands on an error. This automation collects every URL your account points at, requests each one and reports the ones that do not come back healthy.
It is a reporting automation. It never changes your account, so it is safe to activate on a daily schedule and forget about.
What it collects
Each run gathers URLs from three places, each of which you can turn off:
- Ad URLs are the final URLs and final mobile URLs on your ads.
- Keyword URLs are the final URLs set on individual keywords. A keyword URL overrides the ad URL, so a broken one is invisible if you only check ads.
- Sitelink URLs are the destinations behind your sitelink assets.
Every URL is requested once per run, no matter how many ads or keywords share it. By default only enabled ads in enabled ad groups in enabled campaigns are collected, because a paused URL cannot cost you a click.
How a URL is judged
Flowboost requests the URL and follows redirects, up to five hops, to wherever they end. The status code at the end of that chain is what gets compared against Healthy HTTP codes. Anything not on that list is reported as broken, along with the campaign, ad group, ad, keyword or sitelink it came from. 403 and 429 are the exception: they are listed separately and are not counted as broken.
Only 200 is healthy by default. A URL that answers 301 and then 200 is healthy, because the
code recorded is the one at the end of the redirect.
A run also reports when a request failed outright rather than returning a code, for example a domain that no longer resolves or a server that never answered.
Settings
Filters holds the three URL sources, whether paused entities are included, and Ignored domains.
Ignored domains lists hosts that are never requested. Type a domain and press Enter to add it.
Matching includes subdomains, so example.com also skips shop.example.com. Use it to skip a host
entirely, including one that blocks the checker.
Criteria holds Healthy HTTP codes, picked from a dropdown. Most accounts never change it.
Selecting a code treats it as a working page. For every code except 403 and 429, leave it unselected to hear about it. 403 and 429 are already kept out of the broken-link alert.
Three of the options are worth knowing about:
- Redirect codes (
301,302,303,307,308) are best left unselected. A redirect that ends at a working page already reports as200, because the code recorded is the one at the end of the chain. A bare3xxreaches the report only when the redirect is broken: an emptyLocationheader, or a chain longer than five hops. Selecting these codes hides exactly those failures. 403 Forbiddenand429 Too Many Requestsusually mean the host blocked the checker (bot protection or a rate limit), not that the page is broken. They are not counted as broken and do not raise an alert. The run says how many URLs refused the checker. To stop requesting that host, add it under Ignored domains. Select 403 or 429 in Healthy HTTP codes only when those answers should count as a working page.404is deliberately not offered. There is no version of a missing page that is healthy.
When it emails you
You get an alert on the run that finds at least one broken URL. While pages stay broken, Flowboost does not email about it again for seven days, unless a run finds a URL that was not in the last email or a URL that now returns a different error. If a run in between finds no broken URLs, the next one emails you straight away. A host that answers 403 or 429 does not count as broken and does not send this email.
Reading a run
Select the status button in the automation's card or row (it shows the latest run status, for example Finished). The report shows how many URLs were checked, how many came back unhealthy, and a row per problem URL with the entity it belongs to so you can find it in Google Ads. When some URLs answered 403 or 429, the summary also counts how many could not be checked. Those are not listed with the broken links.
A run also reports whether it finished. Very large accounts can hit the per run URL ceiling, in which case the run reports what it managed to check rather than failing. If you see that regularly, turn off a URL source you do not need so the remaining budget goes further.
Suggested approach
Daily is the right cadence. The cost of a broken landing page is proportional to how long it stays broken, and a daily run means you hear about it within a day.
Fix the alert before you widen the settings. A first run on an account that has never been checked often turns up a long tail of old sitelinks pointing at pages that no longer exist. Clear those out, then leave the automation running to catch the next one.