Skip to main content

On This Page

Scaling Programmatic SEO with AI: 126K Pages Indexed in 30 Days

2 min read
Share

These articles are AI-generated summaries. Please check the original sources for full details.

How I Built a Programmatic SEO Tool with 126K Pages Indexed in 30 Days (Built with AI Assistance)

Maxim Landolfi launched GradientGen using Claude for architecture and v0.dev for UI components, resulting in 126,000 pages indexed in 30 days. The tool generates unique, interactive mesh gradients and design assets through programmatic URL structures.

Why This Matters

Traditional programmatic SEO often fails because pages are ‘thin’ templates with simple variable swaps that provide little value to users. This technical approach proves that by making every generated URL a functional, interactive tool—such as a live CSS exporter—and ensuring server-side rendering for internal links, developers can maintain high page quality while scaling to millions of unique entries.

Key Insights

  • 126,000+ pages indexed by Google in 30 days with a 106ms average server response time (GradientGen, 2026).
  • Deterministic internal linking rendered server-side allows search crawlers to discover deep links without executing JavaScript (Claude-assisted architecture).
  • VPS infrastructure optimization using nightly cron jobs to clear ISR cache prevents reaching file system inode limits (Coolify/Next.js 15).
  • Pure JavaScript math engines enable asset generation without external API dependencies, reducing latency and cost.
  • Dynamic metadata generation ensures unique titles and descriptions for over 16 million potential color combinations.

Working Examples

Dynamic sitemap generation for systematic color space coverage.

export default function sitemap(): MetadataRoute.Sitemap {
const urls = generateSitemapUrls()
return urls.map(url => ({
url,
lastModified: new Date(),
changeFrequency: 'monthly',
priority: 0.8,
}))
}

Server-side deterministic linking to facilitate Google crawling.

// lib/generate-related-links.ts — runs on the server
export function generateRelatedLinks(hexCodes: string[]): MatrixLink[] {
const rand = pseudoRandomGenerator(hexCodes.join('-'));
const links: MatrixLink[] = [];
for (let i = 0; i < 12; i++) {
// generate 12 deterministic related color combinations
// ...
}
return links;
}

Cron job to manage ISR cache and inode limits on VPS.

# Clears ISR cache every night at 3:00 AM
0 3 * * * find /path/to/.next/server/app/ -type f -delete

Practical Applications

  • System: Programmatic tool generation for music theory (Chordamo) using 16,128 unique pages. Pitfall: Using client-side generation for related links, which prevents crawlers from indexing the full site graph.
  • System: Design tool directories utilizing Next.js 15 App Router for high-performance metadata. Pitfall: Excessive ISR caching on small VPS instances causing deployment blockages.

References:

Continue reading

Next article

Building Advanced Technical Analysis and Backtesting Workflows with pandas-ta-classic

Related Content