Go to Studio

Google Search Results Count

The Google Search Results Count node returns the exact number of Google results for a query using a binary search across pages, with full operator, country, locale, and date range support.

google google result count node on the workflow canvas

What does the Google Result Count node do?

The Google Search Results Count node runs a Google query and returns the real number of results, not Google’s headline estimate (which is often inaccurate). It paginates through actual SERP pages with a binary search algorithm to give you an exact count and the matching page count.

It supports all Google operators (site:, intitle:, inurl:, -inurl:, etc.), Google Search and Google News, country and locale targeting, location-based geo-targeting, URL blacklists, and date filtering (preset ranges or custom dates that can be driven by upstream variables).

Common use cases:

  • Tracking how many pages Google indexes for a domain with site:yourdomain.com
  • Comparing topical content volume across competitor sites for SEO benchmarking
  • Measuring keyword coverage for a domain with site:yourdomain.com intitle:keyword
  • Monitoring news result counts over time on a topic with date-range filtering

Quick setup

Add the node to the canvas

Open the Node Library, go to Integrations > Google, then drag and drop the Google Search Results Count node onto your workspace.

Connect the query input

Connect the Query input port to a node that produces the search query (a Text Input, an LLM output, or any string source). The query supports all Google search operators.

Configure search settings

In the node settings, choose the search Type (Search or News), the Country and Locale, and optionally a Location for geo-targeting and a Blacklist URLs list to exclude domains.

Configure the date range (optional)

Pick a preset (Last week, Last month, Last 3/6 months, Last year) or Custom to set explicit start and end dates. With Custom, you can tick Use variable for start/end date to receive dates dynamically from upstream nodes.

Connect the outputs

Connect Result Count and/or Page Count to downstream nodes. Both are strings ready to be consumed by an LLM, a Conditional, or any text-aware node.

Configuration parameters

google result count node settings panel

Required fields

Query string required

Search query — The Google query to evaluate. Supports all Google operators: site:, intitle:, inurl:, -inurl:, quoted phrases, etc. Example: site:lefigaro.fr intitle:russie. Connected from an upstream node — accepts a single string only, not a list.

Type select required default: Search

Search typeSearch for the standard Google web search, News for Google News.

Optional fields

Country (gl) select default: France (fr)

Country parameter — Google gl parameter. Controls which regional results are returned.

Location string

Geo-targeted location — A specific location string (e.g. Paris, France) for finer geo-targeting on top of the country parameter.

Locale (hl) select default: French (fr)

Locale parameter — Google hl parameter. Controls the language of search results.

Blacklist urls textarea

Excluded URLs — Comma-separated list of URLs to exclude from results. Each entry is appended to the query as a -inurl: operator. Example: example.com, ads.example.fr, *.spam.com.

Date Range select default: None

Date filter — Restricts results by publication date. Options: None, Last week, Last month, Last 3 months, Last 6 months, Last year, Custom. With Custom, the Start date and End date fields appear.

Start date string

Custom start date — Lower bound for the date filter, in YYYY-MM-DD format. Available only when Date Range is Custom. Tick Use variable for start date to expose an input_start_date connectable input port instead of typing a fixed date.

End date string

Custom end date — Upper bound for the date filter, in YYYY-MM-DD format. Available only when Date Range is Custom. Must be greater than or equal to the start date. Tick Use variable for end date to expose an input_end_date connectable input port.

Tip

When Use variable for start/end date is enabled, template variables like {{startDate}} or {{endDate}} are resolved at runtime from upstream node outputs, so the same workflow can be reused for any time window.

What does the node output?

The node produces two string outputs containing the result of the binary search count.

result_count string

The total number of real Google results found for the query, as a string (e.g. 1234). Capped at 500 (50 pages x 10 results), which is the practical maximum Google itself returns.

page_count string

The number of Google result pages that contain results, as a string (e.g. 50).

Usage examples

Example 1: Site indexation tracking

Track how many pages Google indexes for your domain over time.

Configuration:

  • Query: site:example.com
  • Type: Search
  • Country: France (fr)
  • Date Range: None

Output: result_count: 1234, page_count: 50

Pipe result_count into a Google Sheets node to log indexation snapshots day after day.

Example 2: News topic coverage with a preset range

Count how many news articles a publisher released on a topic last month.

Configuration:

  • Query: site:lemonde.fr intitle:ukraine
  • Type: News
  • Date Range: Last month

Output: result_count: 42, page_count: 5

Connect result_count to a Conditional node to alert when coverage exceeds a threshold.

Example 3: Custom date range driven by upstream variables

Build a reusable monitoring workflow where the date window comes from upstream nodes (a Date node, a Text Input, or another tool).

Configuration:

  • Query: site:lefigaro.fr intitle:russie
  • Date Range: Custom
  • Use variable for start date: checked (exposes input_start_date port)
  • Use variable for end date: checked (exposes input_end_date port)

Connect upstream date sources to the new input ports. The node resolves {{startDate}} and {{endDate}} at runtime.

Example 4: Competitor benchmark on a single keyword

Compare how many indexed pages two competitors have on the same topic.

Configuration A: Query = site:competitor-a.com intitle:pricing Configuration B: Query = site:competitor-b.com intitle:pricing

Run both nodes in parallel, then feed the two result_count values into a single LLM node that summarizes the gap.

Best practices

Tip

Use precise queries. Combine site: with intitle: or quoted phrases to count meaningful subsets rather than the whole index — the binary search is fastest and most accurate when the result set fits well under 500.

Tip

Externalize the dates for any monitoring workflow. Drive start_date and end_date from a Date node so the workflow can be re-run on a schedule without manual edits.

Warning

Result counts are capped at 500. Google rarely lets you paginate beyond 50 pages, so any count above 500 is reported as 500. If you suspect more, narrow the query with operators rather than expecting a higher number.

Warning

Country and locale matter. A query against site:lemonde.fr from Country = US, Locale = en may return very different counts than from France / fr. Match the geography of the target site for stable counts.

Common issues

The node returns 0 even though the query works in Google

Cause: The query might be too restrictive once -inurl: exclusions from Blacklist urls are appended, or the Date Range is excluding the matching pages.

Solution: Temporarily clear Blacklist urls and set Date Range to None to confirm the base query works, then reintroduce filters one at a time.

I get a validation error: Start date must be before or equal to end date

Cause: With Date Range set to Custom, the start date is later than the end date.

Solution: Pick a start date earlier than or equal to the end date. If both come from upstream variables, make sure the upstream nodes output values in YYYY-MM-DD format and in the right order.

The result count looks low compared to Google's headline number

Cause: Google’s headline estimate is famously inflated. This node returns the actual count by paginating real results, which is almost always smaller.

Solution: Trust the node’s output for monitoring and benchmarking. If you need consistency with Google’s headline number, this node is not the right tool.

My input_start_date / input_end_date ports do not appear

Cause: The connectable date input ports only show up when Date Range is Custom and the corresponding Use variable for start/end date checkbox is ticked.

Solution: Set Date Range to Custom first, then tick the externalize checkbox(es). The ports will appear on the node body.

How does it fit into a workflow?

Google Search Results Count is typically used as a measurement step: you build a query upstream, count, then route the count to logging, alerting, or AI summarization.

graph LR
    Date[Date node] --> GRC[Google Search Results Count]
    Query[Text Input: query] --> GRC
    GRC --> Cond[Conditional checks threshold]
    Cond --> Sheet[Google Sheets logs result]
    Cond --> LLM[LLM summarizes findings]