Use Case
Programmatic SEO at Scale
Generate thousands of targeted landing pages from your data. Turn spreadsheets into SEO traffic with Template Mode.
Scale your SEO with data-driven content
Programmatic SEO (pSEO) is the strategy of creating many pages targeting long-tail keywords using templated content and data. Instead of writing each page manually, you define a template and let data fill in the specifics.
Publish Owl's Template Mode gives you complete control. Upload a CSV or connect a Google Sheet, build your content template with {{variables}}, and generate thousands of unique pages. Add optional AI sections for dynamic content, or keep it purely template-based. Your choice.
With built-in schema markup, internal linking, image generation, meta templates, and web scraping for data enrichment, Template Mode handles the entire pSEO workflow from data to published pages.
Key Features Used
- CSV upload or Google Sheets
- Template editor with {{variables}}
- Optional AI sections
- Conditional content blocks
- Schema markup (8 types)
- Meta description templates
- Internal linking automation
- Web scraping enrichment
- Amazon product integration
- Drip publishing
Configuration
Nine tabs of powerful options
Data
Upload CSV files or connect Google Sheets. Columns become variables you can use throughout your template.
Template
Build your title, slug, and content templates. Use {{variable}} syntax to inject data. Visual or HTML editing.
AI Sections
Optionally define AI-generated blocks. Reference them with {{ai.section_name}}. Choose providers, models, and enable web search.
Conditions
Show or hide content based on your data. Supports exists, equals, contains, greater than, and more operators.
Images
Configure featured images from data columns, AI generation, stock photos, or image templates with variable mapping.
Schema Markup
Add JSON-LD structured data. Article, BlogPosting, Product, FAQPage, HowTo, LocalBusiness, Review, and NewsArticle types.
Meta
Template your meta descriptions and keywords. Use variables for dynamic SEO metadata on every page.
Internal Linking
Auto-link within your batch or across your entire site using sitemap discovery and relevance matching.
Enrichment
Scrape external websites to pull in additional data. Extract prices, reviews, or any content via CSS selectors.
Examples
pSEO in action
Location Pages
"Best [service] in [city]" pages for every city you serve. Perfect for local businesses expanding their reach.
Product Comparisons
"[Product A] vs [Product B]" pages for every combination in your catalog. Capture comparison search traffic.
Glossary & Definitions
"What is [term]" pages for every industry term. Build topical authority with comprehensive glossaries.
Integration Pages
"[Your Product] + [Integration]" pages for every tool you integrate with. SaaS companies love this pattern.
Use Case Pages
"[Product] for [Industry]" pages targeting vertical-specific keywords. Show relevance to each market.
Directory Listings
Business or service directory pages with LocalBusiness schema. Great for aggregator sites and marketplaces.
How It Works
From spreadsheet to published pages
Connect Your Data
Upload a CSV or connect a Google Sheet. Each row becomes one page. Column names become variables like {{city}}, {{product}}, or {{price}}.
Build Your Templates
Create title, slug, and content templates using variables from your data. Add static HTML, conditional blocks, spin syntax for variation, and optional AI sections for dynamic content.
Configure Extras
Add schema markup for rich results, meta templates for SEO, internal links for site structure, and image generation. Use enrichment to scrape additional data from external sites.
Generate & Publish
Run the batch to process all rows. Each row generates a unique page with your templates populated. Use drip publishing to spread posts over time for natural-looking growth.
Template Syntax
Powerful variable system
Template Mode supports multiple variable types. Data variables like {{city}} pull directly from your spreadsheet columns. AI sections like {{ai.intro}} generate unique content per row. Conditional sections show or hide content based on your data.
Use spin syntax like {option1|option2|option3} to randomly vary content across pages. Add {{toc}} to auto-generate a table of contents from your headings. The template processor handles it all.
Variable Types
- {{column}} - Data from your spreadsheet
- {{ai.name}} - AI-generated sections
- {{conditional.name}} - Show/hide blocks
- {{toc}} - Auto table of contents
- {a|b|c} - Random spin variation
Why It Works
Long-tail keywords convert
Long-tail keywords have lower search volume individually, but they're easier to rank for and often have higher conversion intent. Someone searching "best plumber in Austin TX" is ready to hire. Someone searching "plumber" is just browsing.
By creating hundreds of targeted pages, you capture traffic across the entire long-tail. The pages that rank bring in highly qualified visitors who are looking for exactly what you offer.
Best Practices
- Quality data - Garbage in, garbage out. Clean your data first.
- Unique value - Add local insights, stats, or specifics per page.
- Schema markup - Use structured data for rich search results.
- Internal links - Connect pages to build topical clusters.
- Drip publish - Don't publish 500 pages in one day.
What is Publish Owl?
AI workflows that think like a content team
Publish Owl orchestrates multiple AI models in sequence, where each step builds on the previous. Just like a content team where researchers hand off to writers, who hand off to editors.
You define the workflow once, then run it with any keyword or data source. The platform handles everything from initial research to final publication on your CMS of choice.
Use your own API keys for complete cost control. No middleman markup, no hidden fees. Just direct access to the AI providers you choose.
Configure every detail: prompts, style guides, AI provider, image generation, and more. Save it once, reuse it endlessly.
Feed keywords, CSV data, or Google Sheets. Each input produces an article based on your agent's settings.
Articles go directly to WordPress, Ghost, Webflow, and other supported platforms with optional scheduling and drip publishing.
Why BYOK?
Skip the hidden markup
Most AI content platforms meter your usage behind subscription tiers. What costs them pennies in API calls gets marked up 10-50x before it reaches you through article limits and pricing tiers.
Publish Owl uses a BYOK (Bring Your Own Key) model. You connect your own API keys from OpenAI, Anthropic, Google, or others, and pay the AI providers directly at their rates.
No middleman. No hidden fees. No surprise bills. Just transparent, direct API costs that you control.
Get Started
From zero to published in five steps
Configure API Keys
Add your AI provider credentials in Settings. Start with one provider. You can always add more later.
Connect Your CMS
Optional. Link your WordPress, Ghost, or other platform for automatic publishing. You can also generate locally.
Create a Workflow
Set up your content workflow. Choose your AI providers, write prompts, and configure any optional features.
Add Keywords
Enter topics for your articles, or upload a spreadsheet for Template/pSEO mode. Each keyword becomes one article.
Generate & Publish
Run your workflow and watch articles generate in real-time. Edit if needed, then publish to your CMS.