---
title: "Check URL Indexing Evidence and sitemaps"
description: "Inspect Google observations, read saved results, and check sitemap membership for URLs."
canonical_url: "https://gscdump.com/gscdump-cli/guides/check-visibility/indexing-evidence"
last_updated: "2026-10-03T07:15:31.764Z"
---

# Check URL Indexing Evidence and sitemaps

Indexing Evidence is a dated observation, not a guarantee that a page will appear in search. Keep inspection, sitemap membership, and change notifications separate.

## Build a URL list

Save one absolute URL per line in `urls.txt`, or pass URLs directly. Use only URLs within the selected Site. For hosted sitemap membership, use the `sitemaps membership` command in Hosted mode. The [commands reference](/gscdump-cli/api/commands) lists the sitemap operations.

## Inspect Google evidence

::pre{tabindex="0"}
```bash
gscdump inspect --site example.com --file urls.txt --json
```
::

For one page, run `gscdump inspect https://example.com/blog/post --site example.com --json`. Results can include Google's verdict, last crawl, chosen canonical URL, and rich-result details. Some fields may be absent. Google URL Inspection has quotas; the CLI saves each completed result and reports remaining URLs after a quota stop.

## Read saved observations

::pre{tabindex="0"}
```bash
gscdump entities show https://example.com/blog/post --site example.com
```
::

Compare the observation date with the traffic period. A saved record can be stale. Hosted mode also offers `gscdump indexing urls --site example.com --status not_indexed` for saved hosted results. That listing spends no inspection quota. A Local mode `inspect` call does.

## Read the coverage ladder (hosted)

::pre{tabindex="0"}
```bash
gscdump indexing summary --site example.com --json
```
::

Each day in `trend` has `coverageStates`. A `counted` day holds one URL count per coverage state. Read the four ladder states in order: `unknown_to_google`, `discovered_not_indexed`, `crawled_not_indexed`, and `indexed`. A `not_counted` day was stored before gscdump counted coverage states. A newer host can add states. Read a missing state as 0, and read a state you do not know as its own state.

`capture` says when gscdump counted the saved verdicts and how old they are. `capture.source` is `stored` for counts gscdump saved on its daily run and `live` for counts made during the request. `olderThan7d` and `olderThan30d` count verdicts inspected more than 7 times 24 hours and 30 times 24 hours before `capturedAt`, not calendar days. Quote `capturedAt` and the `freshness` percents with each count. `capture.scope` is `sitemap_members` when every counted URL is in a live sitemap. The counts come from saved URL Inspection results. They are not Google's live index, and they can differ from the Search Console Page indexing report.

If URLs unknown to Google are already in a sitemap, adding them to the sitemap again changes nothing.

## Watch URLs (hosted)

::pre{tabindex="0"}
```bash
gscdump indexing watch add --site example.com https://example.com/guide
gscdump indexing watch list --site example.com --json
```
::

A Site can hold 50 Watched URLs. gscdump inspects each one every 7 days, before other scheduled URLs, and never backs off. Each inspection spends the Site's daily URL Inspection budget and the URL Inspections meter. Each scheduled inspection stores one Checkpoint. Compare Checkpoints by date to see when a URL moves up the ladder.

`add` and `remove` send 50 URLs per request, so a longer list works. Every URL must be absolute; a relative URL fails before any request. If a Site has URL Inspection off, `add` skips each URL with `inspection_disabled`, because gscdump never inspects that Site. Turn on URL Inspection in the Site settings first.

## Check sitemap membership

::pre{tabindex="0"}
```bash
gscdump sitemaps list --site example.com
gscdump sitemaps membership --site example.com \
  --urls https://example.com/blog/post --json
```
::

Use the hosted membership command only in Hosted mode. For local inspection of URLs in a sitemap, pipe `gscdump sitemaps urls https://example.com/sitemap.xml` to `gscdump inspect --site example.com`. A submitted sitemap is a discovery signal, not an indexing verdict. Missing membership in an incomplete sitemap observation is unknown, not absent.

## Choose the next action

::table{tabindex="0"}
| Observation                                    | Next check                                                                         |
| ---------------------------------------------- | ---------------------------------------------------------------------------------- |
| URL absent from the intended sitemap           | Fix the sitemap and submit it if needed.                                           |
| URL in the sitemap and still unknown to Google | Check that Google downloaded the sitemap, then link to the URL from indexed pages. |
| Google selected a different canonical          | Check page canonicals and internal links.                                          |
| Evidence is old                                | Inspect again after a meaningful change and allow crawl time.                      |
| Bing differs                                   | [Compare Google and Bing](/gscdump-cli/guides/check-visibility/google-and-bing).   |
::

Google's Indexing API accepts change notifications only for eligible `JobPosting` or livestream pages with `BroadcastEvent` inside `VideoObject`. The Site must meet Google's prerequisites, and the API needs local Google credentials with the required scope.

::pre{tabindex="0"}
```bash
gscdump indexing submit https://example.com/jobs/frontend-engineer --mode local
gscdump indexing status https://example.com/jobs/frontend-engineer --mode local
```
::

`indexing status` reads notification metadata. It does not prove indexing. Use `inspect` for dated Indexing Evidence. More URL checks: [Check visibility](/gscdump-cli/guides/check-visibility).

<docsagentprompt prompt="Use the installed gscdump skill. Ask for one page URL and Site. Inspect dated Google Indexing Evidence. Check sitemap membership if Hosted mode supports it. Keep indexing notifications separate."></docsagentprompt>

## Sitemap

See the full [sitemap](/sitemap.md) for all pages.
