ScreenshotNeo

BlogHow-to

How to Capture Competitor Pages and Search Results in One SEO Report

Build a repeatable SEO report from sampled search results, competitor page captures, and your own Search Console data—with context that makes every finding clear.

By the ScreenshotNeo team4 October 202610 min read

To capture competitor pages and search results in one SEO report, save each search as a dated, contextual sample; capture the pages shown in that sample; and add your own site’s Search Console data as a separate first-party data source. Record the query, search engine, time and timezone, location, language, device, visible result features, result URLs, and capture reference beside every screenshot. Repeat the same sample conditions when comparing change, and describe positions as observed in a particular capture rather than stable rankings.

Google Search Console reports your own site’s performance in Google Search. It is not a competitor traffic report. Competitor page captures and sampled search results provide different evidence: what a page looked like and what appeared for a particular query under recorded conditions.

1. Define a comparable sample

Start with a focused query set tied to the reporting site’s business goals and known Search Console queries. Keep branded and non-branded queries separate. Before capturing, choose the search engine, market or location, language, device, and cadence. If you report multiple markets or devices, give each its own labeled sample instead of combining them.

Field What to record
Query Exact query string, including spelling and punctuation.
Engine Search engine and, where relevant, the search surface.
Capture time Date and time with timezone.
Search context Location, language, device, and any fixed settings used.
Observed layout Visible ads and features such as local results, images, videos, or answer panels; distinguish these from organic links.
Results Displayed title, destination URL, and observed position for each organic result you include.
Evidence reference Screenshot or PDF filename, storage reference, or capture record identifier.

Google explains that search results may vary by time, context, location, language, device, and personalization, and may change as content is added or ranking systems are updated. A screenshot is therefore a sample of a search, not a universal or stable ranking snapshot. Record enough context to reproduce a similar sample, then qualify every position as “observed in this capture.” Google Search Help: Why your Google Search results differ from others.

2. Capture the search results page

  1. Run each query using the location, language, device, and search settings selected for the sample.
  2. Capture the visible results page and note the local time and timezone. Use the same conditions for later comparison where practical.
  3. Transcribe the visible organic results’ titles, URLs, and positions. Record ads and other SERP features separately so they are not mistaken for organic results.
  4. Save the screenshot with a consistent filename, for example 2026-10-04T1030Z_us-en_mobile_query-id_serp.png. Keep a CSV row or equivalent metadata record linked to it.
  5. When repeating a sample, preserve its query and context fields, but note any condition you could not match.

Do not infer a competitor’s traffic from a visible position or screenshot. The capture shows what appeared in one sample, not impressions, clicks, or the experience of every searcher.

3. Capture the competitor pages shown in the sample

Open the competitor URLs recorded from the sampled results. Save a full-page screenshot or PDF, and store the canonical URL and capture time with it. Note the visible title and H1, page type, major headings, content format, prominent calls to action, and whether the page fulfills the intent suggested by the query and search result.

A screenshot preserves visual evidence; extracted readable content can make later searching and comparison easier. For JavaScript-heavy pages, verify that the capture reflects the rendered page and intended viewport. Crawlers can help collect and revisit URLs at scale, but record the rendering mode and capture settings. Capture.page documents screenshot, PDF, content, metadata, full-page capture, and device emulation capabilities; Screaming Frog SEO Spider documents screenshot exports and Search Console integrations. See Capture.page documentation and Screaming Frog SEO Spider documentation.

Build a compact evidence row

report_date,query,engine,timezone,location,language,device,serp_capture,observed_features,organic_position,result_url,page_capture,page_type,notes
2026-10-04,"example service query",Google,UTC,United States,en,Mobile,serp-001.png,"ads; local pack",1,https://competitor.example/page,competitor-001.pdf,comparison,"Observed in this sample; full-page capture saved"

Use stable identifiers instead of putting long query strings into filenames. If the query contains commas or quotes, encode it correctly in CSV. Keep the original screenshot and the structured row together in your report archive.

4. Add your own Search Console performance data

Export the Performance report for the same reporting period. Include clicks, impressions, click-through rate (CTR), and average position. Add query and page dimensions when they help explain your site’s results. Search Console’s Performance report defaults to a three-month date range, which you can adjust along with metrics and dimensions. The table can be grouped by queries, pages, countries, devices, search appearance, and dates. The chart and table may aggregate differently. See Google Search Console Performance report documentation.

Keep this export distinct from sampled SERP evidence. Search Console metrics describe your property; they do not report competitors’ clicks or impressions. Its average position is an aggregate measure: Google defines it as the average position of the topmost result from your site. An individual search can show a different position because of location, search history, and other variables. See Google’s explanation of impressions, position, and clicks.

Search Console values can differ from other tools because coverage, processing, crawl timing, and privacy handling differ. Some rows may be omitted because of privacy and internal limitations. Explain the source and date range of every metric, and don’t present one export as a complete record of search activity. See Google Search Console data discrepancies guidance.

Use URL Inspection for your own pages

For rendering or indexing diagnostics on your own site, URL Inspection provides indexed data and a live test; the live test can show a screenshot of how Google retrieved the page. Use it for a URL in the property you manage. For competitor URLs, use a browser, crawler, or page-capture service instead. See Google URL Inspection documentation.

5. Assemble and interpret the report

A useful combined report connects the sample to your site’s own performance without blending what the sources measure. Organize it so a reader can trace each finding to its evidence.

  1. Executive finding and period: State the main observation and the dates covered.
  2. Query and capture context: Provide the query set, locations, languages, devices, capture times, and any mismatches between samples.
  3. Sampled SERPs: Include screenshots or references, the observed result URLs, and separately labeled ads and SERP features.
  4. Competitor pages: Link each page capture to its canonical URL and summarize page type, structure, content coverage, and calls to action.
  5. Your Search Console data: Summarize clicks, impressions, CTR, and average position for the chosen period, with query or page breakdowns where useful.
  6. Comparison and next actions: Compare query intent and page type, SERP placement and features, page structure and coverage, and changes from the prior sample. Tie each recommendation to evidence and state its limits.

This is a reporting method, not a Google-prescribed template. A practical observation might read: “In the October 4, 10:30 UTC US English mobile capture for ‘example service query,’ competitor.example appeared first among the recorded organic results, below a local pack. Its page is a comparison page with pricing and feature headings. Our Search Console export for the same reporting period shows impressions for the related query group; these first-party totals do not describe competitor traffic.”

Google’s Links report can provide an additional first-party backlink context export in CSV or Google Sheets. Treat it as Search Console link data, not a complete view of all links on the web. See Search Console Links report documentation.

6. Make captures repeatable and useful over time

  • Use a fixed query list and capture cadence, and retain old records rather than overwriting them.
  • Keep date, timezone, location, language, device, and visible layout beside the evidence in both storage and report exports.
  • Use consistent viewport and rendering settings for competitor pages. Note when a page is inaccessible, personalized, or materially different after interaction.
  • Keep source files, metadata rows, and report references together. A screenshot without its query and context is difficult to interpret later.
  • For each reported change, compare samples with matching conditions and state remaining differences. A change between two captures does not by itself establish why it happened.
  • When producing PDFs or sharing screenshots, check the rights and terms that apply to the intended use. Google’s screenshot guidance says permission is not needed for screenshots of Google Search pages or results in print for educational or instructional purposes; that limited guidance should not be extended to every commercial reuse or third-party page capture. See Google Search screenshot guidance.

7. Capture pages with a screenshot API

A capture API can make competitor page evidence easier to save consistently, especially when you have a list of result URLs. ScreenshotNeo is a website screenshot API and MCP server from Yorker Media. It supports screenshots and PDFs; its API accepts common screenshot API parameter names to make switching easier. Review the ScreenshotNeo website and API documentation for the request options and response details.

Keep your capture metadata in your own report record. The API captures the target page; your workflow should associate the returned file with the sampled query, SERP context, canonical URL, and time.

Or skip the browser setup

Use one GET request to capture a competitor page as a WebP image:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, and failed loads are never billed. Its MCP server lets AI agents use tools for screenshots, page information, and PDF capture. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up free and get 1,000 screenshots a month with no card.

8. Troubleshooting

Problem Likely cause What to do
The same query shows different results on a later capture. Time, location, language, device, personalization, new content, or ranking-system changes altered the sample. Check and record the context fields; repeat under matching conditions and report each capture as a separate observation.
A reported position conflicts with Search Console average position. A single SERP sample and an aggregate first-party metric measure different things. Label the screenshot position as observed in that capture. Keep Search Console average position in its own period and property context.
A competitor page screenshot is blank or incomplete. The page may rely on JavaScript, load content lazily, block automation, or require interaction. Check the rendered page in a browser, wait for relevant content, use a suitable rendering mode, and note any inaccessible or incomplete capture.
Search Console totals do not match another analytics or SEO tool. Coverage, processing, crawl timing, and privacy handling may differ. Compare date ranges, properties, dimensions, and definitions; disclose the source and use Search Console as data for the verified property.
Capture files cannot be matched to report rows. Files lack stable identifiers or metadata was separated from the evidence. Assign capture IDs, use a naming convention, and keep the query context row with each screenshot or PDF.
A CSV import breaks query or URL fields. Commas, quotes, or line breaks were not escaped as CSV requires. Quote text fields and escape embedded double quotes; validate the import with a small sample.
A search feature is counted as an organic result. Ads, local results, or other SERP features were mixed into the organic position list. Record features in a separate field and number only the organic links you are comparing.

9. Performance, reliability, and cost

For a small report, a browser and a carefully maintained evidence sheet may be sufficient. For recurring samples or many result URLs, a crawler or capture API can reduce repetitive collection work. Capture each query and page only as often as the reporting decision needs; matching conditions and good records are more useful than collecting unstructured screenshots frequently.

Reliability depends on preserving the original evidence and its context, checking that rendered pages finished loading, and noting inaccessible or incomplete captures. A successful image response does not prove the page was representative for every visitor. Keep retries and changed capture settings visible in the record so later reviewers can distinguish a new observation from a replacement file.

Search Console data is available through its report exports, and Search Console’s Links report also exports data. For capture services, check current plan limits and the options needed for your workflow. ScreenshotNeo’s published plans are Free with 1,000 shots per month, Starter $5 for 3,000, Growth $15 for 15,000, Pro $39 for 60,000, Scale $99 for 250,000, and Business $249 for 1,000,000; yearly billing gives two months free, and every feature is on every plan. Use its response verdict and billing headers to identify whether a capture was clean and billed. See the ScreenshotNeo documentation for current API behavior and options.

Frequently asked questions

Can I use Search Console to see a competitor’s clicks?

No. Search Console Performance data is for the site property you manage. It does not provide competitor click or impression totals.

Should a screenshot position be reported as a ranking?

Report it as a position observed in a specific capture, with query and context. A screenshot is one sample, while Search Console average position is an aggregate metric.

Can I inspect a competitor URL with URL Inspection?

URL Inspection is for properties you can access in Search Console. Use a browser, crawler, or capture service for competitor pages.

Can I include Google Search screenshots in a commercial report?

Google’s cited permission guidance is limited to screenshots used in print for educational or instructional purposes. Check applicable rights and terms for other uses and for third-party pages.

How many queries should a report include?

Use enough queries to answer the reporting question, with separate labels for markets and devices. There is no universal query count; prioritize a focused set that can be sampled consistently.