ToolSura
    HomeTools
    Blog

    Track indexed-vs-not over time with -report and -diff

    Posted on July 19, 2026 by Abhay khant

    Key Takeaways

    Track which URLs Google has indexed over time with gsc-indexer's -report and -diff flags, and watch coverage shift between runs.

    Want to know whether your pages are actually getting indexed as time goes on? Use -report to snapshot a run and -diff to compare against a previous one.

    Snapshot a run with -report

    -report <dir> writes three files into the directory you name:

    ./gsc-indexer -creds sa.json -batch urls.txt -report ./report
    
    • indexed.txt. URLs Google has indexed.
    • not-indexed.txt. everything else (not indexed, or errored).
    • summary.json. counts + the full URL lists, in machine-readable form.

    The run also prints a summary to your terminal:

    SUMMARY: 87 indexed, 13 not indexed of 100 URLs
      → ./report/indexed.txt
      → ./report/not-indexed.txt
    

    Compare runs with -diff

    Later, re-run and point -diff at the saved summary.json:

    ./gsc-indexer -creds sa.json -batch urls.txt -diff ./report/summary.json
    

    This prints what changed since the baseline:

      ▲ newly indexed:    https://www.toolsura.com/post-new/
      ▼ dropped (was indexed, now not): https://www.toolsura.com/post-stale/
    ...
    DIFF vs ./report/summary.json
      indexed:   87 → 90  (+3)
      not index: 13 → 10  (-3)
      newly indexed: 3 | dropped: 1 | unchanged: 96
    
    • ▲ newly indexed. URLs that moved from not-indexed to indexed.
    • ▼ dropped. URLs that were indexed before but aren't now.

    Update and compare in one pass

    You can write a fresh report and diff against the previous one at the same time:

    ./gsc-indexer -creds sa.json -batch urls.txt -report ./report -diff ./report/summary.json
    

    The diff uses the previous summary.json (read before it's overwritten), so this is safe to run on a schedule.

    Next

    • Large runs timing out? Throttling and quiet mode.
    • Broken run? Troubleshooting.

    Sources

    • Google Search Console
    • URL Inspection API documentation
    • Google Search APIs overview
    • Service account OAuth (Google Identity)
    • About service accounts (Google Cloud IAM)
    • Verify site ownership
    • Property types: URL-prefix vs Domain
    • URL Inspection tool help
    • Indexing API (JobPosting/BroadcastEvent only)
    • Request indexing / inspect a URL

    Frequently Asked Questions

    How do I snapshot the current indexed state?

    Add -report ./report to write indexed.txt, not-indexed.txt, and summary.json into that directory. Run it after a full batch or sitemap pass. The summary file is the snapshot you compare against later, and it is what -diff reads.

    How do I see what changed since the last run?

    Re-run with -diff ./report/summary.json. The tool prints which URLs are newly indexed, which dropped out, and before versus after counts with up and down arrows. This is how you confirm a re-crawl actually moved pages into the index.

    Can I update and compare in a single pass?

    Yes. Pass both -report ./report and -diff ./report/summary.json together. The run writes the new snapshot and compares it against the old one, so you finish with fresh data and a delta report in one command instead of two separate invocations.

    What format is the snapshot data in?

    summary.json holds the counts and is machine-readable, while indexed.txt and not-indexed.txt are plain URL lists you can diff or grep by hand. Keep the whole report directory between runs; only the summary.json matters for the -diff comparison.

    Why bother tracking this at all?

    Google's index drifts. Pages drop from exclusions, crawl errors, or stale content, and you rarely notice until traffic moves. A weekly -report plus -diff gives you a small, readable changelog of index health instead of a silent surprise later.

    Community Feedback

    Reviews & Discussions

    0
    Based on 0 Reviews

    Leave a Review

    Rate this tool
    Overall Rating
    Spam Protection Active
    ToolSuraPrivacy-First Tools

    Building the next generation of privacy-first developer utilities. No trackers, no bloat, just performance.

    All Systems Operational

    Product

    • Free Online Tools
    • Contact
    • FAQs
    • About

    Legal

    • Privacy Policy
    • Cookie Policy
    • Terms & Conditions

    Resources

    • Blog
    • Brand
    • Help

    © 2026 ToolSura. Engineering Excellence in Browser-Native Software.

    Remote-First / Based in India

    Technical Manifesto

    Private • Client-Side • No Tracking

    ToolSura on Nick Launches
    Browser-Native
    Privacy-First