Product overview

SearchAnalysis.io: URL submission and indexing monitoring

SearchAnalysis.io is a Google-first platform for teams who need a tighter feedback loop between publishing and indexing. Connect Google Search Console, submit URLs via the Indexing API, and monitor URL Inspection results in one place.

Definitions

Feature terms and definitions

These terms match how the product is implemented inside the dashboard and API. Understanding them makes the rest of this page (and the UI) unambiguous.

Property (Site)
A website you manage inside SearchAnalysis.io. Properties organize submissions, determine which OAuth token is used, and provide context for monitoring.

Related: Domain, URL, Ownership

Google Search Console (GSC)
Google’s official platform for verifying site ownership, reading sitemaps, and running URL Inspection. SearchAnalysis.io connects to GSC via OAuth.

Related: OAuth, GSC property URL, URL Inspection

GSC Property URL
The exact Search Console property identifier you select (for example, a Domain property like sc-domain:example.com, or a URL-prefix property like https://example.com/).

Related: Domain property, URL-prefix property

OAuth connection
A secure authorization grant that allows SearchAnalysis.io to call Google APIs on your behalf. Tokens are stored encrypted and scoped to a specific Property.

Related: Scopes, Encryption

Indexing submission
A request to Google’s Indexing API notifying Google about a URL update. This can speed up discovery for eligible content types, but indexing is never guaranteed.

Related: Google Indexing API, Engine status

URL Inspection
A Google Search Console API that returns what Google currently knows about a specific URL (verdict, coverage state, canonical, robots status, and more).

Related: Inspection verdict, Coverage state

Submission
A single URL you’ve imported or submitted for a Property. Submissions are tracked over time and can have multiple per-engine statuses.

Related: Batch, EngineStatus

Engine status (EngineStatus)
A per-search-engine status record for a Submission (for example, Google Indexing submission status and Google Search Console inspection status).

Related: PENDING, QUEUED, SUBMITTED, INDEXED, FAILED

Batch
A group of submissions created together (CSV upload, sitemap import, or GSC sitemap import). Batches help you track large operations as one unit.
Credits
Usage units that control how many URLs you can submit/import. Each URL consumed typically costs 1 credit (plans determine balances and resets).

Related: Plans, Rate limits

Queue + worker
Background processing that performs submissions and monitoring asynchronously (so the UI stays fast). Redis powers the queue; workers submit and re-check URLs.

Related: Redis, BullMQ

Retry schedule
When an inspection is not ready (or indexing is still pending), SearchAnalysis.io automatically schedules re-checks with backoff (minutes → hours → day).

Related: Monitoring attempts, nextRetryAt

Workflow

How SearchAnalysis.io works (end-to-end)

SearchAnalysis.io is built around a single goal: reduce the time between “published” and “I know what Google thinks about this URL.” The product achieves this by combining URL intake, Google submission, and repeated inspection monitoring.

1) Create a Property
Add your site once, then keep every URL, submission, and inspection result grouped under that Property. This also defines the Google OAuth context.
2) Connect Google Search Console
Connect via OAuth, then select the correct GSC Property URL. The system checks scope requirements and will prompt you to reconnect if scopes are missing.
3) Import or submit URLs
Submit a single URL, paste a bulk list, upload a CSV, import from an XML sitemap, or import URLs directly from sitemaps discovered in GSC.
4) Background submission + monitoring
Every URL creates per-engine statuses and jobs in the queue. Workers submit to the Indexing API and run URL Inspection checks over time with retries/backoff.
5) Monitor outcomes in one dashboard
The Monitor view shows every submitted URL and its status per engine. For Google Search Console, inspection details are stored (verdict, coverage state, canonical, robots state) so you can spot patterns and failures quickly.
Features

Full feature set

This section describes the product as it exists in the current codebase: what the UI exposes, what the API enforces, and what the background workers do.

Google submission pipeline
Submits URL notifications via the Google Indexing API using a background worker. Tracks queued/submitted/failed states per URL.
URL Inspection monitoring
Runs repeated URL Inspection checks and stores inspection details (verdict, coverage, canonical, robots). Includes a retry schedule when results aren’t ready.
Multi-site management
Add multiple sites, connect Google per site, and keep submissions separated by Property (domain). Pre-selection links make multi-site workflows faster.
Bulk intake
Import URLs from CSV and sitemaps, create batches, validate URLs, and skip duplicates. Each URL becomes a tracked Submission.
Credits + plans
Plans and credits gate usage. Credits are deducted when submissions/imports are created, and the header shows your live balance.
Onboarding & guidance
A guided site checklist and persistent banner explain what to do next so “connected” always leads to visible URLs in Monitor.

Search engine integrations

SearchAnalysis.io is Google-first. The data model also includes engine slots for Bing, Yandex, and Seznam to support future multi-engine expansion.

EngineStatusWhat it does
Google Indexing APILiveSubmits URL notifications (background worker) and records submission outcome.
Google Search Console (URL Inspection)LiveRuns inspections, stores verdict/coverage/robots/canonical details, and schedules re-checks.
BingPlannedEngine slot exists in the data model; integration is not yet shipped.
YandexPlannedEngine slot exists in the data model; integration is not yet shipped.
SeznamPlannedEngine slot exists in the data model; integration is not yet shipped.

URL intake (submission + import)

The Submit experience supports multiple ingestion paths so you can match your workflow—single URL, bulk paste, CSV, sitemap URL, or Search Console sitemap import.

  • Single URL: submit one URL for a selected Property.
  • Bulk list: paste many URLs at once; invalid URLs are rejected.
  • CSV upload: upload a file with URLs; SearchAnalysis.io creates a batch and tracks status per URL.
  • XML sitemap import:provide a sitemap URL; the system parses and imports discovered URLs.
  • GSC sitemap import:choose from sitemaps discovered in your connected Search Console property.

Account, plans, and credits

Accounts are authenticated with Clerk. A database-backed user record tracks your plan tier and credits. Credits are deducted when you create submissions via any intake method.

  • Live credits display in the dashboard header.
  • Plan tiers exist in the data model (Free → Enterprise) to support future plan-based limits and reset schedules.
  • Invite codes and waitlist tables exist to support controlled beta access.

Product areas (what you can do in the app)

SearchAnalysis.io is implemented as a focused set of dashboard screens. Everything described on this page maps to one of the areas below.

AreaStatusWhat it’s for
DashboardLiveAt-a-glance stats (total, indexed, pending, failed) plus a “Quick Start” card that adapts to your setup state.
SitesLiveCreate and manage Properties (sites), see submission counts, and track GSC connection status.
Site SettingsLiveConnect Google, select your GSC property URL, import sitemap URLs from GSC, toggle auto-sync (where available), and follow the guided setup checklist.
SubmitLiveSubmit a single URL or submit/import in bulk (list, CSV, sitemap URL) for the selected Property.
MonitorLiveThe canonical view of submissions + per-engine status, including stored URL Inspection summaries.
Rules (automation)PlannedUI placeholder exists; rule configuration and execution UI is not yet shipped.
SettingsPlannedAccount settings UI placeholder exists; richer settings are not yet shipped.
AdminPartialAdmin area scaffolding exists with placeholder metrics and system status; more admin tools are expected as the product grows.

Extensibility and planned capabilities

The codebase includes data models for future expansion. These items should only be marketed as “shipped” when end users can actually use them.

  • Automation rules: schema exists, dashboard entry exists, configuration UI is planned.
  • API keys: schema exists to support programmatic submission and monitoring.
  • Additional engines: Bing, Yandex, and Seznam are represented in the `SearchEngine` enum.
Monitor

Monitoring, statuses, and inspection details

“Submitted” is not the same as “indexed.” SearchAnalysis.io tracks both submission activity and Google’s reported understanding of a URL.

Per-engine status tracking

Every Submission gets multiple engine statuses (at minimum: Google Indexing and Google Search Console). This makes it clear whether an issue is in submission, monitoring, or URL-specific indexing rules.

Statuses are visible in the Monitor page, and the UI highlights key inspection fields like verdict and coverage state.

Inspection retry schedule

Indexing is asynchronous. SearchAnalysis.io schedules multiple inspection attempts with backoff (minutes → hours → day) and stops after a defined number of attempts.

This is designed to give you a stable “time to clarity” metric without manual rechecking.

What gets stored from URL Inspection

SearchAnalysis.io stores an inspection payload summary alongside the engine status to support monitoring UX and future analytics.

  • Verdict (overall indexing verdict)
  • Coverage state
  • Robots.txt state
  • Canonical (user-declared and Google-selected)
  • Last crawl time (when available)
Trust

Security, reliability, and correctness

SearchAnalysis.io is built around official APIs, strict property scoping, and background execution. This section covers the guarantees the system makes (and the limits it respects).

Encrypted OAuth tokens
OAuth access and refresh tokens are stored encrypted. Tokens are scoped to a specific Property so site access cannot be mixed across properties.
Scope enforcement
If Google OAuth scopes are missing (for example, Indexing API scope), the UI flags “Reconnect required,” and submission endpoints return clear errors until re-authorized.
Queue-backed background work
URL submission and monitoring are executed in workers backed by a Redis queue. This keeps the dashboard responsive and supports retries and scheduling.
Property ownership checks
Submission endpoints enforce property selection and ownership. Users can only submit/inspect URLs for Properties they own.
FAQ

Frequently asked questions

Does SearchAnalysis.io guarantee Google indexing?

No. SearchAnalysis.io submits and monitors using official Google APIs, but Google ultimately decides if/when a URL is indexed. The product is built to increase visibility and shorten feedback loops by combining submission + inspection monitoring.

Why do I need to select a Google Search Console property?

URL Inspection and sitemap discovery require a specific Search Console property context. Selecting the correct property ensures ownership, correct scope, and accurate inspection results.

What is the difference between Google Indexing and Google Search Console status?

Google Indexing status represents the submission pipeline (queued/submitted/failed). Google Search Console status represents monitoring results from the URL Inspection API (verdict, coverage state, robots, canonical, etc.). Both are tracked per URL.

Can I import URLs instead of pasting them one by one?

Yes. You can paste a bulk list, upload a CSV, import an XML sitemap URL, or import from sitemaps discovered in Google Search Console.

What happens after I submit/import URLs?

SearchAnalysis.io creates per-engine statuses for each URL, enqueues background jobs, submits to the Indexing API, then performs URL Inspection checks over time. You can view everything in Monitor.

Start submitting and monitoring URLs

If you manage multiple sites, publish frequently, or need faster indexing feedback, SearchAnalysis.io is built for you.