SEO Service Area Visibility Checker avatar

SEO Service Area Visibility Checker

Pricing

from $0.50 / 1,000 results

Go to Apify Store
SEO Service Area Visibility Checker

SEO Service Area Visibility Checker

Checks how visible a business is in Google across multiple service areas and generates an SEO visibility report.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

Solutions Smart

Solutions Smart

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

4 days ago

Last modified

Share

What does SEO Service Area Visibility Checker do?

SEO Service Area Visibility Checker helps you measure how visible your business is in Google Search across multiple cities and service areas. You can track keyword rankings, spot visibility gaps, and see which competitors dominate local search results.

The Actor can extract:

  • Keyword rankings for your domain across multiple cities
  • Competitor websites appearing in search results
  • Service area visibility gaps and missing rankings
  • Detailed SERP data with position tracking
  • Diagnostic reports when anti-bot or consent pages are encountered

Why check SEO visibility across service areas?

Businesses that operate in multiple cities or service areas need to understand how visible they are in local search results. Geographic SEO performance directly impacts customer acquisition, as users often search with local intent, for example plumber in Hannover.

Here are some ways you could use this visibility data:

  • Monitor your local SEO performance across all service areas
  • Identify which cities or keywords need SEO improvement
  • Track competitor presence in your target markets
  • Optimize content strategy based on visibility gaps
  • Prove SEO results to clients with structured reports
  • Make data-driven decisions about geographic expansion

Best for

  • Local SEO agencies
  • Plumbers, HVAC companies, electricians, roofers, and other local service businesses
  • Businesses expanding into nearby cities
  • Teams reporting local SEO performance to clients

How to check SEO visibility

It is easy to check SEO visibility across service areas with SEO Service Area Visibility Checker:

  1. Click on Try for free.
  2. Enter your target domain, for example example.de, together with the keywords and cities or service areas you want to analyze.
  3. Optionally configure country, language, maximum number of results, retries, retry backoff, sticky proxy behavior, proxy rotation, homepage warmup, and debug artifact storage.
  4. Click Run.
  5. When the Actor finishes, review the final report in the Dataset tab or open the HTML report from the key-value store output.

Input parameters

{
"targetDomain": "example.de",
"keywords": ["Sanitaer", "Heizung", "Installateur"],
"cities": ["Hameln", "Bad Muender", "Hannover", "Hildesheim"],
"country": "DE",
"language": "de",
"maxResults": 10,
"maxQueryRetries": 2,
"retryBackoffMs": 4000,
"stickyProxySession": true,
"rotateProxySession": true,
"warmupGoogleHome": false,
"warmupOnRetries": false,
"disableWarmupAfterBlock": true,
"saveDebugArtifacts": true,
"saveDebugArtifactsOnRetries": false,
"proxyConfiguration": {
"useApifyProxy": true
}
}
ParameterTypeRequiredDescription
targetDomainstringYesBare domain to track, for example example.de
keywordsarrayYesService keywords to check in each city
citiesarrayYesCities or service areas to analyze
countrystringNoGoogle country code, default DE
languagestringNoGoogle interface language code, default de
maxResultsintegerNoMaximum number of organic results to inspect per query, default 10
maxQueryRetriesintegerNoNumber of retries after anti-bot pages or transient failures
retryBackoffMsintegerNoBase delay in milliseconds before each retry. Stronger blockers such as anti-bot pages, CAPTCHAs, and HTTP 429 responses use a longer cooldown automatically
stickyProxySessionbooleanNoKeep one proxy session for a full query and rotate after stronger failure signals such as HTTP 429, anti-bot pages, CAPTCHAs, or navigation timeouts
rotateProxySessionbooleanNoUse a fresh proxy session for retries when rotation is needed
warmupGoogleHomebooleanNoOpen the country-specific Google homepage before the SERP request to create a more natural session. Default false because some proxy profiles are blocked before search navigation begins
warmupOnRetriesbooleanNoRepeat homepage warmup on retry attempts. Default false to reduce extra requests on already blocked sessions
disableWarmupAfterBlockbooleanNoTurn off homepage warmup for the rest of the run after the first anti-bot or CAPTCHA signal
saveDebugArtifactsbooleanNoSave screenshots and HTML diagnostics for blocked or unexpected pages
saveDebugArtifactsOnRetriesbooleanNoContinue saving screenshots and HTML diagnostics on retry attempts. Default false to reduce storage noise
proxyConfigurationobjectNoOptional Apify proxy settings for reducing Google anti-bot blocking

Output

The Actor produces a visibility report containing:

  • summary: Overall visibility metrics and run statistics, including visibilityScore, data quality, failure breakdowns, and sample URLs for troubleshooting
  • visibilityByCity: Ranking visibility broken down by city
  • missingCities: Service areas where your domain was not found
  • competitors: Domains appearing frequently in organic results
  • pricing: Metered visibility checks, pricing model details, and spending-limit status
  • recommendations: Suggested next steps for SEO improvement or technical troubleshooting
  • detailedResults: Complete keyword-by-keyword SERP data, attempt history, and diagnostics

Output is stored in:

  • The default dataset as a final report item
  • The default key-value store under the OUTPUT key
  • A styled HTML dashboard report under the OUTPUT.html key
  • Persistent run history under the REPORT_HISTORY key
  • Debug screenshots and diagnostics when anti-bot or consent pages are encountered

HTML report example

You can preview a live example of the generated HTML dashboard here:

Open the HTML report example

Snapshot of the HTML report:

HTML report example

Results example

In this example, the domain ranks in some cities and is missing in others, highlighting a service-area gap.

{
"summary": {
"targetDomain": "example.de",
"totalCities": 4,
"visibleCities": 2,
"notVisibleCities": 2,
"visibilityScore": 50,
"totalKeywordCityCombinations": 12,
"checkedCombinations": 12,
"dataQuality": {
"successfulQueries": 12,
"failedQueries": 0,
"successRate": 100
}
},
"visibilityByCity": [
{
"city": "Hameln",
"visible": true,
"bestRank": 3,
"keywordsFound": ["Sanitaer", "Heizung"],
"queriesProcessed": 3,
"queriesFailed": 0
},
{
"city": "Bad Muender",
"visible": false,
"bestRank": null,
"keywordsFound": [],
"queriesProcessed": 3,
"queriesFailed": 0
}
],
"missingCities": ["Bad Muender", "Hildesheim"],
"competitors": [
{ "domain": "competitor1.de", "count": 6 },
{ "domain": "competitor2.de", "count": 4 }
],
"pricing": {
"pricingModel": "PAY_PER_EVENT",
"isPayPerEvent": true,
"totalPlannedChecks": 12,
"completedChecks": 12,
"meteredChecks": 12,
"spendingLimitReached": false
},
"status": "success",
"message": "Successfully analyzed 12 out of 12 queries."
}

How much will it cost?

This Actor uses Apify pay-per-event monetization with one visibility-check event for each keyword-plus-city analysis that returns parseable SERP data.

That means a run with 3 keywords across 4 cities plans 12 billable visibility checks. The exact event price is configured in Apify Console, and the Actor respects the maximum spend allowed for the run.

Apify gives you $5 in monthly credits on the Apify Free plan, which can be enough to test the Actor or run smaller checks.

For ongoing monitoring across larger keyword and city sets, the Starter plan or Scale plan may be a better fit depending on your usage.

Tips for checking SEO visibility

  • Run checks regularly, for example weekly or monthly, to track ranking changes over time
  • Start with your most important keywords and service areas
  • Use competitor data to analyze what is working in your market
  • Check both branded and service-based keywords for a fuller visibility picture
  • Review the recommendations section for actionable next steps
  • If diagnostic reports appear, use them to understand whether drops are caused by ranking changes or technical blocking

For Google SERP checks, this is the recommended starting configuration:

{
"maxQueryRetries": 2,
"retryBackoffMs": 4000,
"stickyProxySession": true,
"rotateProxySession": true,
"warmupGoogleHome": false,
"warmupOnRetries": false,
"disableWarmupAfterBlock": true,
"saveDebugArtifacts": true,
"saveDebugArtifactsOnRetries": false,
"proxyConfiguration": {
"useApifyProxy": true
}
}

This avoids spending the first attempt on a homepage session that may already be blocked, reduces extra request noise on retries, and avoids filling storage with near-duplicate retry diagnostics.

Technical notes

  • The Actor uses Playwright because Google SERPs often require browser automation
  • Google anti-bot measures can vary, so some runs may return partial data
  • When extraction fails because of consent pages or CAPTCHAs, detailed diagnostics are saved to help troubleshoot
  • Results use Google UULE location targeting for city-specific search simulation
  • For better reliability against blocking, you can enable proxyConfiguration
  • Sticky proxy sessions help keep one residential identity for a full query, while stronger failure signals can still trigger a fresh session on retry
  • Retries can relaunch the browser with a fresh proxy session when blocking is detected
  • Repeated anti-bot or CAPTCHA pages use a longer exponential cooldown before retrying
  • The Actor attempts to accept Google consent dialogs before classifying a run as failed
  • Each run refreshes an HTML dashboard and stores recent report history for comparison
  • Each query that returns parseable SERP data can be metered through Apify pay-per-event pricing

Checking search visibility for websites is a standard SEO activity. If you combine these results with personal data in your own workflows, make sure you comply with applicable privacy laws. For more information, see Apify's blog post on web scraping and the law.

Feedback and rating

If SEO Service Area Visibility Checker helps you, please consider leaving a rating on Apify and sharing a short review about your experience.

If you have ideas for improvements, want additional features, or run into issues, your feedback is very welcome. User feedback helps improve the Actor and prioritize the next updates.