---
title: "Programmatic SEO indexing: get thousands of pages indexed"
description: "Why programmatic SEO pages sit unindexed, what to fix first, and how to submit them in batches and track the index rate of every template."
canonical: "https://indexmysite.app/programmatic-seo-indexing"
language: "en"
---

# Get your programmatic SEO pages indexed, one batch at a time

Submit hundreds or thousands of templated pages in batches, see which templates Google indexes, and stop spending on the ones it does not. If a page is confirmed as not indexed, you get the standard credit back.

[Start indexing](https://app.indexmysite.app/signup)[Plan your rollout](#planner)

## Why programmatic SEO pages are not indexed

Large sets of templated pages usually stall in two places in Search Console: Discovered - currently not indexed, where Google has not crawled them yet, and Crawled - currently not indexed, where it crawled them and chose not to index them. These are the usual causes.

-   ### The template says almost nothing

    A page that is a title, a few swapped fields, and boilerplate gives Google little reason to index it. Thin pages often end up as Crawled - currently not indexed.

-   ### Pages are near copies of each other

    City, variant, or comparison pages that differ by one word look like duplicates. Google consolidates duplicates and indexes one version, not all of them.

-   ### Nothing links to them

    Pages that only exist in a sitemap, with no hub or category page linking to them, look unimportant and are harder for Google to find.

-   ### Your site cannot be crawled that fast

    Every site starts with a cautious crawl capacity limit that grows only if demand is there and the server stays fast. Thousands of new URLs can wait as Discovered - currently not indexed.

-   ### Everything went live on one day

    Publishing the full set at once puts every URL in the same crawl queue, including the weak ones. Google spends time on pages you did not need indexed.

-   ### The sitemap lists URLs you do not want indexed

    Redirects, noindex pages, filtered views, and URLs whose canonical points elsewhere waste crawling on pages that cannot be indexed.

Based on Google’s guides to [crawl budget](https://developers.google.com/search/docs/crawling-indexing/large-site-managing-crawl-budget) and the [Page indexing report](https://support.google.com/webmasters/answer/7440203). Read more about [Discovered - currently not indexed](https://indexmysite.app/discovered-currently-not-indexed) and [Crawled - currently not indexed](https://indexmysite.app/crawled-currently-not-indexed).

## Fix these four things before you submit any pages

Submitting a page gets Googlebot to it sooner. It does not change what Googlebot finds when it gets there. Do these first.

1.  1

    ### Give every page data no other page has

    Each page should answer its search on its own: real numbers, specifics, examples, or listings for that one entity. If two pages would say the same thing, merge them into one.

2.  2

    ### Link to every page from hubs

    Build category and hub pages that link to each programmatic page, and link related pages to each other. A page Google can reach by following links is easier to find and looks more important.

3.  3

    ### List only canonical, indexable URLs in your sitemap

    Each URL should return 200, carry no noindex, not be blocked by robots.txt, and have a canonical that points to itself. Add lastmod when pages change.

4.  4

    ### Publish in batches, best pages first

    Launch the pages with the most search demand and the strongest data first. If those get indexed, release the next batch. If they do not, fix the template before you publish more.

## Submitting cannot rescue thin, scaled pages

Google’s spam policies treat many pages generated mainly to rank, with little or no value to users, as scaled content abuse, whether a person, a script, or AI wrote them. No indexing service changes that.

### Google lists these as examples

-   Using AI or similar tools to generate many pages without adding value for users.
-   Scraping feeds or search results, or rewording them with synonyms or translation, to make many pages.
-   Stitching content from other pages together without adding value.
-   Many pages that make little sense to a reader but contain search keywords.

### What that means for your templates

-   Every page needs something useful that the other pages in the set do not have.
-   If you cannot fill a page with real data, do not publish it.
-   A low index rate is Google telling you about the template. Fix it before you send more.
-   We never promise indexing. Google decides.

Source: [Google spam policies, scaled content abuse](https://developers.google.com/search/docs/essentials/spam-policies#scaled-content).

## Work out how many jobs and credits your rollout needs

Enter how many pages you plan to index and how many to send in each batch. Each job holds up to 2000 URLs.

Example: 20,000 pages sent 2,500 at a time is 8 batches and 16 jobs (up to 2000 URLs per job). With standard indexing that is at most 20,000 credits: $4,000 at $0.20 per credit, or $2,000 at the bulk price of $0.10 per credit, which applies to any single purchase of $1,000 or more. Skipped URLs are not charged, and any URL confirmed as not indexed after the final check, around day 14, gets its standard credit back.

## How to roll out programmatic pages with Index My Site

Submit in batches, read the result for each batch, and only scale the templates that get indexed.

1.  Step 1

    ### Create a project for the site

    A project groups every job for one site, so all of its programmatic pages report together.

2.  Step 2

    ### Submit your first batch

    Paste the URLs, upload them with the CLI, or send them from the API. One job takes up to 2000 URLs, and you can create as many jobs as you need. Name each job after the template or batch so you can compare them later.

3.  Step 3

    ### Let the checks filter out pages that cannot be indexed

    Redirects, noindex pages, robots.txt blocks, error pages, and canonicals pointing to another page are skipped and not charged. Pages with little main content wait for your approval, with the word count we found, so a thin template shows up before you pay for it.

4.  Step 4

    ### Read the index rate before you send the next batch

    We check every URL once after 24 hours. Your full report follows around day 5, with final checks around day 14. The project shows its index rate once batches finish, so you can see which templates Google is taking.

5.  Step 5

    ### Stop spending on templates that do not get indexed

    If one template has a low index rate, pause it and improve the content before you submit more of it. Pages confirmed as not indexed get their standard credit back.

6.  Step 6

    ### Watch the sitemap for new pages

    Once the template works, add your sitemap to the project. We read it every six hours and can submit new URLs automatically, up to a limit you set per read (100 by default).

Details in the docs for [projects and sitemap watches](https://indexmysite.app/docs/projects) and [checks before sending](https://indexmysite.app/docs/submitting-urls#checks-before-sending).

## Guides for fixing indexing on large sites

[

### Crawled, currently not indexed

Google visited the page and decided not to index it. What causes it and what to fix.

](https://indexmysite.app/crawled-currently-not-indexed)[

### Discovered, currently not indexed

Google knows the URL but has not crawled it yet. Common on large, new sections.

](https://indexmysite.app/discovered-currently-not-indexed)[

### Page indexing report

Read each status in Search Console and decide which ones need fixing.

](https://indexmysite.app/page-indexing-report)[

### Automatic indexing

Watch your sitemap or add a step to your deploy so new pages are submitted as they go live.

](https://indexmysite.app/automatic-indexing)[

### Indexing API

Submit generated pages from your own pipeline with one API key.

](https://indexmysite.app/indexing-api)[

### Indexability checker

Check one page from each template for robots rules, noindex tags, and thin content for free.

](https://indexmysite.app/tools/indexability)

## Frequently asked questions

### Why are my programmatic SEO pages not indexed?

Usually because the pages are thin or very similar to each other, few internal links point to them, or the site published more URLs than Google is ready to crawl. Google says it decides how much to crawl from crawl capacity and crawl demand, and that demand depends on page quality, popularity, and how many duplicate or unimportant URLs it finds on the site.

Source: [Google Search Central: Optimize your crawl budget](https://developers.google.com/search/docs/crawling-indexing/large-site-managing-crawl-budget)

### Can submitting get thin programmatic pages indexed?

No. Submitting helps Googlebot find and crawl a page. Google still decides whether to index it. Google treats many pages made mainly to rank, with little value to users, as scaled content abuse, however they were created. Sites that break Google’s spam policies can rank lower or drop out of results, so fix the content first.

Source: [Google Search Central: Spam policies, scaled content abuse](https://developers.google.com/search/docs/essentials/spam-policies#scaled-content)

### Is programmatic SEO against Google’s rules?

Not by itself. Google’s scaled content abuse policy is about pages generated mainly to manipulate rankings that provide little or no value, no matter how they are made. Templated pages built on unique, useful data for each entity are a different thing from pages that only swap a keyword.

Source: [Google Search Central: Spam policies, scaled content abuse](https://developers.google.com/search/docs/essentials/spam-policies#scaled-content)

### Should I publish all my pages at once?

We suggest batches. Google says every site starts with a conservative crawl capacity limit that rises only if there is demand and the site stays healthy. Releasing your best pages first lets you see whether the template gets indexed before you publish thousands more like it.

Source: [Google Search Central: Optimize your crawl budget](https://developers.google.com/search/docs/crawling-indexing/large-site-managing-crawl-budget)

### How many URLs can I submit at once?

Up to 2000 URLs per job, and as many jobs as you have credits for. A URL that is already in progress in another of your jobs is skipped without charge, so overlapping batches do not cost twice.

### What does it cost to submit thousands of pages?

Standard indexing is 1 credit per sent URL, which is $0.20, or $0.10 on any single purchase of $1,000 or more. Skipped URLs are not charged. A URL confirmed as not indexed after the final check, around day 14, gets its standard credit back. Credits never expire.

### Should I noindex the pages that do not get indexed?

If a page has nothing useful to add, remove it and return 404 or 410, or merge it into a stronger page. Google says noindex pages are still requested and then dropped, which wastes crawling, and that removed pages should return 404 or 410.

Source: [Google Search Central: Optimize your crawl budget](https://developers.google.com/search/docs/crawling-indexing/large-site-managing-crawl-budget)

## Send your first batch of programmatic pages

Create an account, buy credits from $25, and send your strongest pages as the first batch.

[Start indexing](https://app.indexmysite.app/signup)

[See pricing](https://indexmysite.app/pricing)
