Search up to 100 Google queries in one run and collect ranked pages as Markdown in one Dataset. Use the sources in research, RAG or AI agents, with a separate status for each query and page. JavaScript rendering is not supported.
2026-10-06: Failed and long runs end with a summary
Fixes
A run that fails, for example on invalid input, an unavailable Google SERP proxy or an unconfirmed charge, now saves RUN_SUMMARY with overall_statusFAILED, error_message and a next step before it stops. Before, only a run that finished normally had a summary.
Query charges are now confirmed by counting the query-searched event itself, so a future platform library update cannot turn every charged query into a failed run.
Large batches finish before the run timeout instead of timing out without a summary or charges. Queries the Actor could not start in time get SKIPPED_TIME_LIMIT and are not charged; pages it could not fetch get TIMEOUT with RUN_DEADLINE. Searches that ran are still charged, and RUN_SUMMARY reports time_limit_reached.
When Apify moves or restarts a run, it now continues from its Dataset instead of failing with "automatic replay is unsupported". Queries that already have a QUERY row are not searched or charged again, and pages already delivered are not fetched again.
2026-09-26: More reliable requests and spending checks
Fixes
Retry-After is treated as the server's minimum wait. If it exceeds the retry budget, the request ends with an explicit failure instead of retrying early.
2026-09-22: Markdown for up to 100 search queries
Changes
0.1
Send up to 100 research questions. Each unique query is searched once, the top pages are fetched, and the Dataset keeps the ranked results plus Markdown you can trace back to the query and rank.
A unique query that returns a valid search result costs $0.030. One query is about $0.03, and 100 unique queries are $3.00. Set maxTotalChargeUsd to at least $0.03 times the number of unique queries.
This is the first published version, so there is no previous input to migrate.