docs: more research
This commit is contained in:
parent
016ba8591e
commit
3dc49683cc
|
|
@ -0,0 +1,80 @@
|
|||
---
|
||||
slug: mcp-image-generation-guide
|
||||
title: "Generate Images in Your IDE with MCP"
|
||||
status: inbox
|
||||
created: 2026-01-02
|
||||
source: research/keywords/docs-seo-analysis-2026-01-02.md
|
||||
timing: blocked (waiting for MCP feature)
|
||||
---
|
||||
|
||||
# Idea
|
||||
|
||||
## Discovery
|
||||
|
||||
**Source:** Competitive analysis — Replicate and fal.ai both have MCP documentation
|
||||
|
||||
**Evidence:**
|
||||
- Replicate: replicate.com/docs/reference/mcp
|
||||
- fal.ai: docs.fal.ai/model-apis/mcp (Cursor-specific guide)
|
||||
- r/mcp subreddit: 82K subscribers, active discussion of image MCP servers
|
||||
- Third-party MCP servers for image generation on GitHub (seedream, flux, etc.)
|
||||
|
||||
## Why This Matters
|
||||
|
||||
1. **Market expectation** — Developers using Cursor/Claude Code expect MCP integration
|
||||
2. **Competitor parity** — Both major competitors have this documented
|
||||
3. **Workflow-native positioning** — This is our core value proposition
|
||||
4. **SEO opportunity** — "image generation mcp" emerging as search term
|
||||
|
||||
## Potential Angles
|
||||
|
||||
**Option A: Documentation page**
|
||||
`/docs/mcp/` — Getting started with Banatie MCP server
|
||||
- Cursor setup guide
|
||||
- Claude Desktop integration
|
||||
- Claude Code usage
|
||||
- Example workflows
|
||||
|
||||
**Option B: Tutorial blog post**
|
||||
"How to Generate Images Without Leaving Your IDE"
|
||||
- Shows full workflow
|
||||
- Compares to API calls
|
||||
- Code examples
|
||||
|
||||
**Option C: Comparison**
|
||||
"Banatie MCP vs Replicate MCP vs fal.ai MCP"
|
||||
- Feature comparison
|
||||
- Setup complexity
|
||||
- Unique Live URLs capability
|
||||
|
||||
## Keywords (to research when feature ships)
|
||||
|
||||
- "image generation mcp"
|
||||
- "ai image mcp server"
|
||||
- "cursor image generation"
|
||||
- "claude code image generation"
|
||||
- "mcp server image api"
|
||||
|
||||
## Notes
|
||||
|
||||
- **BLOCKED** — Cannot publish until MCP feature ships
|
||||
- Pre-write documentation draft now
|
||||
- Launch content same day as feature release
|
||||
- Emphasize Live URLs as unique MCP capability (neither competitor has this)
|
||||
|
||||
## Differentiation Point
|
||||
|
||||
Key message: "Generate images via URL without writing API code"
|
||||
|
||||
```
|
||||
// Competitor MCP:
|
||||
"Generate an image of a sunset"
|
||||
→ Returns image file/data
|
||||
|
||||
// Banatie MCP + Live URLs:
|
||||
"Create a placeholder URL for product images"
|
||||
→ Returns URL that generates on-demand
|
||||
→ No storage, instant, shareable
|
||||
```
|
||||
|
||||
This is our unique angle.
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
---
|
||||
slug: placeholder-ai-images
|
||||
title: "AI Placeholder Images — Capture 30K Monthly Searches"
|
||||
status: inbox
|
||||
created: 2026-01-02
|
||||
source: research
|
||||
priority: high
|
||||
---
|
||||
|
||||
# Idea
|
||||
|
||||
## Discovery
|
||||
|
||||
**Source:** DataForSEO keyword research + Reddit community analysis
|
||||
**Evidence:**
|
||||
- 31,000+ monthly searches for placeholder-related terms
|
||||
- Zero AI-generated placeholder services exist
|
||||
- Direct user quote from r/ClaudeAI: "right now my instructions are to just do placeholder image in various sizes... I am wondering if there is an mcp that can create or fetch these images"
|
||||
|
||||
## Why This Matters
|
||||
|
||||
This is a **blue ocean opportunity**. The entire placeholder image market (placehold.co, picsum.photos, etc.) returns random stock photos or gray boxes. Nobody offers AI-generated, context-aware placeholders.
|
||||
|
||||
Banatie's Live URLs feature can capture this entire market with proper positioning.
|
||||
|
||||
## Keyword Targets
|
||||
|
||||
### Zero/Low Difficulty (Target First)
|
||||
| Keyword | Volume | KD |
|
||||
|---------|--------|----|
|
||||
| image placeholder dark | 4,400 | 2 |
|
||||
| app placeholder image | 1,900 | 2 |
|
||||
| profile placeholder image | 720 | 0 |
|
||||
| ios placeholder image | 590 | 0 |
|
||||
| dummy photo image | 720 | 5 |
|
||||
|
||||
### High Volume Cluster
|
||||
| Keyword | Volume | KD |
|
||||
|---------|--------|----|
|
||||
| placeholder image | 14,800 | 18 |
|
||||
| image placeholder | 14,800 | 17 |
|
||||
|
||||
## Content Strategy
|
||||
|
||||
### Option A: Documentation Section
|
||||
Create `/docs/placeholders/` with subsections:
|
||||
- Dark mode placeholders (4,400 vol)
|
||||
- Profile/avatar placeholders (2,500 vol)
|
||||
- Size-specific placeholders (1,000 vol)
|
||||
- Mobile app placeholders (1,200 vol)
|
||||
|
||||
### Option B: Dedicated Landing Page
|
||||
Create `/placeholder-images` targeting core 14,800 vol cluster:
|
||||
- Position Live URLs as "AI Placeholder Service"
|
||||
- Interactive examples with common sizes
|
||||
- Code snippets for HTML/CSS/React
|
||||
|
||||
### Option C: Both (Recommended)
|
||||
- Landing page for awareness/SEO
|
||||
- Docs for conversion/usage
|
||||
|
||||
## Competitive Advantage
|
||||
|
||||
| Competitor | What They Do | Our Advantage |
|
||||
|------------|--------------|---------------|
|
||||
| placehold.co | Gray boxes | Real AI images |
|
||||
| picsum.photos | Random stock | Context-aware |
|
||||
| placekitten | Random cats | Prompt-based |
|
||||
| via.placeholder | Gray boxes, slow | Fast CDN + AI |
|
||||
|
||||
## Implementation Notes
|
||||
|
||||
For Live URLs to capture this market:
|
||||
1. Support common sizes: 200x200, 600x400, 1200x630, etc.
|
||||
2. Enable dark mode generation via URL param
|
||||
3. Allow category hints: `/live/profile-avatar/200x200`
|
||||
4. Consider pre-generated cache for instant loading
|
||||
|
||||
## Full Research
|
||||
|
||||
See: `research/keywords/placeholder-niche-deep-dive-2026-01-02.md`
|
||||
|
|
@ -0,0 +1,331 @@
|
|||
# Documentation SEO Analysis — January 2, 2026
|
||||
|
||||
**Objective:** Identify SEO opportunities for Banatie's technical documentation (10 pages at `/docs/`) without major content changes.
|
||||
|
||||
**Budget Used:** ~$0.25 (3 DataForSEO queries)
|
||||
|
||||
---
|
||||
|
||||
## Executive Summary
|
||||
|
||||
### Key Findings
|
||||
|
||||
1. **MCP Integration is Table Stakes** — Both Replicate and fal.ai now have official MCP servers. This validates our MCP strategy but also means we must ship and document it to stay competitive.
|
||||
|
||||
2. **Placeholder Niche is Wide Open** — SERP for "placeholder image url" (390 volume, KD 21) is dominated by basic random-photo services. None offer AI-generated placeholders. Banatie's Live URLs feature can capture this market.
|
||||
|
||||
3. **"Image Generation API" SERP Has No Direct Competitors** — Top 10 dominated by OpenAI, Google, Leonardo. Neither Replicate, fal.ai, nor Runware appear. Opportunity exists for a focused API landing/docs page.
|
||||
|
||||
4. **Documentation Structure Gap** — Competitors have model playgrounds, interactive examples, and SDK quickstarts prominently featured. We should highlight these in navigation.
|
||||
|
||||
---
|
||||
|
||||
## Task 1: Keyword Research (Complete)
|
||||
|
||||
### Primary Keywords — Image Generation API
|
||||
|
||||
| Keyword | Volume | KD | Intent | Opportunity |
|
||||
|---------|--------|-----|--------|-------------|
|
||||
| image generation api | 210 | 31 | Commercial | **TARGET** — exact match, reasonable KD |
|
||||
| ai image generator api | 90 | 19 | Commercial | **TARGET** — low KD, transactional |
|
||||
| openai image generation api | 480 | 20 | Navigational | Comparison angle |
|
||||
| gpt-image-1 api | 210 | 20 | Navigational | Specific model search |
|
||||
| chatgpt 4o image generation api | 50 | 10 | Navigational | Very low KD |
|
||||
|
||||
### Placeholder/Live URL Keywords (Niche Opportunity)
|
||||
|
||||
| Keyword | Volume | KD | Opportunity |
|
||||
|---------|--------|-----|-------------|
|
||||
| placeholder image url | 390 | 21 | **EXCELLENT** — exact match to Live URLs |
|
||||
| placeholder image generator | 480 | 32 | **GOOD** — matches use case |
|
||||
| lorem picsum | 880 | 15 | **EXCELLENT** — competitor brand, beatable |
|
||||
| random image url | 320 | 24 | **GOOD** — developer testing |
|
||||
| placeholder image api | 90 | 23 | **GOOD** — exact product match |
|
||||
|
||||
### Related Searches (from SERP)
|
||||
|
||||
- "Image generation api python" → add Python SDK examples
|
||||
- "Image generation API pricing" → pricing transparency
|
||||
- "Placeholder image url generator" → Live URLs positioning
|
||||
|
||||
---
|
||||
|
||||
## Task 2: Competitor Documentation Analysis (Complete)
|
||||
|
||||
### Replicate
|
||||
|
||||
**URL:** replicate.com/docs
|
||||
|
||||
**Structure:**
|
||||
- Getting Started / How it Works
|
||||
- HTTP API Reference (detailed endpoints)
|
||||
- SDKs (Python, JavaScript, Go, Swift)
|
||||
- Explore (model browser)
|
||||
- Collections (curated model groups)
|
||||
- **MCP Server** ← NEW, official integration
|
||||
|
||||
**Strengths:**
|
||||
- Interactive model pages with live testing
|
||||
- Multiple SDK support with examples
|
||||
- Strong API reference with cURL examples
|
||||
- Migration guides from other platforms
|
||||
|
||||
**Weaknesses:**
|
||||
- Generic platform (not image-specific)
|
||||
- Complex pricing varies by model
|
||||
- No built-in delivery/CDN
|
||||
|
||||
### fal.ai
|
||||
|
||||
**URL:** docs.fal.ai
|
||||
|
||||
**Structure:**
|
||||
- Model APIs (core documentation)
|
||||
- Quickstart
|
||||
- Client Libraries (JS, Python)
|
||||
- Model Endpoints / Queue API
|
||||
- Guides (text-to-image, video, etc.)
|
||||
- **MCP Integration** ← documented for Cursor
|
||||
- Platform APIs (model management)
|
||||
- Examples & Tutorials
|
||||
- Model Playgrounds (interactive)
|
||||
|
||||
**Strengths:**
|
||||
- MCP integration documented for Cursor/Claude
|
||||
- Model playgrounds prominent
|
||||
- Clear separation: Model APIs vs Platform APIs
|
||||
- OpenAPI schema published
|
||||
|
||||
**Weaknesses:**
|
||||
- Dense documentation
|
||||
- Less beginner-friendly than Replicate
|
||||
|
||||
### Runware
|
||||
|
||||
**URL:** docs.runware.ai
|
||||
|
||||
**Structure:**
|
||||
- Getting Started / Introduction
|
||||
- API References by type:
|
||||
- Image Inference
|
||||
- Video Inference
|
||||
- Audio Inference
|
||||
- Utilities (Model Search)
|
||||
- Tools (Caption API)
|
||||
- Model Providers (OpenAI, etc.)
|
||||
|
||||
**Strengths:**
|
||||
- Task-based architecture (clear pattern)
|
||||
- Multi-modal coverage
|
||||
- Aggressive pricing ($0.0006/image)
|
||||
|
||||
**Weaknesses:**
|
||||
- No visible MCP integration
|
||||
- Less polished documentation
|
||||
- No model playground
|
||||
|
||||
### Competitive Matrix
|
||||
|
||||
| Feature | Replicate | fal.ai | Runware | **Banatie** |
|
||||
|---------|-----------|--------|---------|-------------|
|
||||
| MCP Server | ✅ Official | ✅ Official | ❌ No | 🔜 Planned |
|
||||
| Playground | ✅ Yes | ✅ Yes | ❌ No | ❌ No |
|
||||
| Python SDK | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No |
|
||||
| JS SDK | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No |
|
||||
| OpenAPI Spec | ✅ Yes | ✅ Yes | ❓ Unknown | ❌ No |
|
||||
| Live URL Gen | ❌ No | ❌ No | ❌ No | ✅ **Unique** |
|
||||
| Built-in CDN | ❌ No | ❌ No | ❌ No | ✅ **Unique** |
|
||||
|
||||
---
|
||||
|
||||
## Task 3: SERP Analysis (Complete)
|
||||
|
||||
### "image generation api" — Top 10
|
||||
|
||||
| Position | Domain | Type |
|
||||
|----------|--------|------|
|
||||
| 1 | platform.openai.com | Documentation |
|
||||
| 2 | ai.google.dev | Documentation |
|
||||
| 3 | leonardo.ai | Landing page |
|
||||
| 4 | reddit.com | Discussion |
|
||||
| 5 | docs.cloud.google.com | Documentation |
|
||||
| 6 | thehive.ai | Landing page |
|
||||
| 7 | developer.puter.com | Tutorial |
|
||||
| 8 | openrouter.ai | Documentation |
|
||||
| 9 | edenai.co | Landing page |
|
||||
| 10 | (Images carousel) | — |
|
||||
|
||||
**Insight:** Mix of documentation and landing pages. No direct competitors in top 10. Reddit at position 4 shows community engagement potential.
|
||||
|
||||
### "placeholder image url" — Top 10
|
||||
|
||||
| Position | Domain | Description |
|
||||
|----------|--------|-------------|
|
||||
| 1 | placehold.co | Simple placeholder service |
|
||||
| 2 | picsum.photos | Lorem Picsum (random photos) |
|
||||
| 3 | reddit.com | r/webdev discussion |
|
||||
| 4 | placehold.net | Another placeholder service |
|
||||
| 5 | (Images carousel) | — |
|
||||
| 6 | loremipsum.io | Article listing services |
|
||||
| 7 | VS Code extension | — |
|
||||
| 8 | placeholder.pics | URL-based placeholders |
|
||||
| 9 | pagebee.io | Random images service |
|
||||
| 10 | dev.me | Advanced placeholder API |
|
||||
|
||||
**Critical Insight:** ALL services return random stock photos. NONE offer AI-generated placeholders. This is a clear market gap.
|
||||
|
||||
---
|
||||
|
||||
## Recommendations
|
||||
|
||||
### 1. Live URLs → Placeholder Market (HIGH PRIORITY)
|
||||
|
||||
**Current state:** `/docs/live-urls/` exists but doesn't target placeholder keywords.
|
||||
|
||||
**Action:** Expand Live URLs page with new sections:
|
||||
|
||||
```
|
||||
Current title: "Live URLs — Shareable Image Links"
|
||||
|
||||
Add sections:
|
||||
- "Use as Placeholder Images"
|
||||
Target: "placeholder image url", "placeholder image api"
|
||||
|
||||
- "Alternative to Lorem Picsum"
|
||||
Target: "lorem picsum", competitor comparison
|
||||
|
||||
- "Dynamic Testing Images"
|
||||
Target: "random image url", "free image url for testing"
|
||||
```
|
||||
|
||||
**Traffic potential:** 1,500+ monthly searches from placeholder niche
|
||||
|
||||
### 2. MCP Documentation Page (HIGH PRIORITY — pending feature)
|
||||
|
||||
**Why:** Both Replicate and fal.ai have MCP docs. Developers expect this.
|
||||
|
||||
**Action:** When MCP server ships, create `/docs/mcp/` with:
|
||||
- Cursor integration guide
|
||||
- Claude Desktop setup
|
||||
- Claude Code integration
|
||||
- Example workflows
|
||||
|
||||
**Target keywords:** "image generation mcp", "ai image mcp server"
|
||||
|
||||
### 3. Comparison Content (MEDIUM PRIORITY)
|
||||
|
||||
**Option A:** Dedicated comparison page `/docs/vs-openai/`
|
||||
**Option B:** Blog post "Banatie vs OpenAI Image API"
|
||||
|
||||
**Target keywords:**
|
||||
- "openai image generation api" (480 volume, KD 20)
|
||||
- "openai api pricing" (12K volume, comparison angle)
|
||||
|
||||
**Content:** Feature comparison table, pricing comparison, code examples side-by-side.
|
||||
|
||||
### 4. Python/SDK Examples (MEDIUM PRIORITY)
|
||||
|
||||
**Why:** "image generation api python" appears in related searches and competitors have SDK docs.
|
||||
|
||||
**Action:** Add Python snippets to Getting Started page, consider future SDK.
|
||||
|
||||
### 5. Interactive Playground (LOW PRIORITY — significant effort)
|
||||
|
||||
**Why:** All major competitors have playgrounds. Developers expect to test before integrating.
|
||||
|
||||
**Action:** Consider for roadmap, not documentation-only change.
|
||||
|
||||
---
|
||||
|
||||
## Content Ideas Generated
|
||||
|
||||
### For 0-inbox/
|
||||
|
||||
1. **placeholder-ai-images.md** — "AI-Powered Placeholder Images for Developers"
|
||||
- Target: placeholder niche keywords
|
||||
- Angle: Why AI placeholders beat random stock photos
|
||||
|
||||
2. **mcp-image-generation.md** — "Generate Images in Your IDE with MCP"
|
||||
- Target: MCP + image generation intersection
|
||||
- Timing: When MCP feature ships
|
||||
|
||||
3. **lorem-picsum-alternative.md** — "Lorem Picsum Alternative: AI Placeholders"
|
||||
- Target: "lorem picsum" (880 volume, KD 15)
|
||||
- Angle: Direct competitor comparison
|
||||
|
||||
---
|
||||
|
||||
## Research Tools Used
|
||||
|
||||
| Tool | Queries | Cost |
|
||||
|------|---------|------|
|
||||
| Brave Search | 5 queries | Free |
|
||||
| Perplexity | 3 queries | Free |
|
||||
| DataForSEO | 3 queries (~$0.08 each) | ~$0.25 |
|
||||
|
||||
**Total:** ~$0.25 / $0.50 budget
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. [ ] Implement Live URLs page expansion (placeholder keywords)
|
||||
2. [ ] Create content ideas in 0-inbox/
|
||||
3. [ ] Ship MCP server → document immediately
|
||||
4. [ ] Consider comparison page strategy
|
||||
5. [ ] Track rankings for target keywords monthly
|
||||
|
||||
---
|
||||
|
||||
## Appendix: Full Keyword Data
|
||||
|
||||
### Image Generation API Keywords
|
||||
|
||||
```
|
||||
image generation api | 210 | KD 31 | Commercial
|
||||
ai image generator api | 90 | KD 19 | Commercial
|
||||
openai image generation api | 480 | KD 20 | Navigational
|
||||
gpt-image-1 api | 210 | KD 20 | Navigational
|
||||
chatgpt 4o image generation api | 50 | KD 10 | Navigational
|
||||
image generation api python | — | — | Informational
|
||||
image generation api pricing | 10 | Low | Commercial
|
||||
```
|
||||
|
||||
### Placeholder Keywords
|
||||
|
||||
```
|
||||
placeholder image url | 390 | KD 21 | Informational
|
||||
placeholder image generator | 480 | KD 32 | Informational
|
||||
lorem picsum | 880 | KD 15 | Navigational (competitor)
|
||||
random image url | 320 | KD 24 | Informational
|
||||
placeholder image api | 90 | KD 23 | Commercial
|
||||
image placeholder html | 320 | KD 33 | Informational
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Expanded Research: Placeholder Niche Deep Dive
|
||||
|
||||
**See:** `placeholder-niche-deep-dive-2026-01-02.md`
|
||||
|
||||
Follow-up research revealed the placeholder opportunity is **15x larger** than initially estimated:
|
||||
|
||||
| Original Estimate | Expanded Research |
|
||||
|-------------------|-------------------|
|
||||
| ~2,100 monthly searches | **31,000+ monthly searches** |
|
||||
| 6 keywords identified | **40+ keywords identified** |
|
||||
| KD range: 15-33 | **Multiple KD 0-5 keywords found** |
|
||||
|
||||
### Key Additions from Deep Dive
|
||||
|
||||
**Zero-Difficulty Keywords (KD 0-5):**
|
||||
- image placeholder dark — 4,400 vol, KD 2
|
||||
- app placeholder image — 1,900 vol, KD 2
|
||||
- profile placeholder image — 720 vol, KD 0
|
||||
- ios placeholder image — 590 vol, KD 0
|
||||
- dummy photo image — 720 vol, KD 5
|
||||
|
||||
**Community Validation (Reddit):**
|
||||
> "right now my instructions are to just do placeholder image in various sizes... I am wondering if there is an mcp that can create or fetch these images for Claude instead."
|
||||
|
||||
This quote from r/ClaudeAI directly validates our use case and MCP strategy.
|
||||
|
|
@ -0,0 +1,212 @@
|
|||
# @spy Research Brief: Documentation SEO Analysis
|
||||
|
||||
**Date:** January 2, 2026
|
||||
**Priority:** Medium
|
||||
**Requested by:** @men (strategy session)
|
||||
**Budget limit:** $0.50 DataForSEO
|
||||
|
||||
---
|
||||
|
||||
## Context
|
||||
|
||||
We've launched documentation section at `banatie.app/docs/` with 10 pages. SEO metadata and JSON-LD schemas are implemented. Now we need competitive intelligence to identify potential improvements.
|
||||
|
||||
**Constraint:** No major content changes — this is technical documentation. Looking for small optimizations and gaps we might be missing.
|
||||
|
||||
---
|
||||
|
||||
### Task 0: Free search and analysis of existing documentation section
|
||||
|
||||
**Goal:** Inspect real NextJS pages for potential content improvements and to be aware of what exact content we have in docs section
|
||||
|
||||
Browse docs section in landing app project (NextJS) using Filesystem MCP:
|
||||
|
||||
`/projects/my-projects/banatie-service/apps/landing/src/app/(apps)/docs`
|
||||
|
||||
Understand the content. Collect the list of potential topics and keywords we can consider to promote via SEO
|
||||
|
||||
---
|
||||
|
||||
## Research Tasks
|
||||
|
||||
### Task 1: Keyword Opportunities
|
||||
|
||||
**Goal:** Find keywords developers use when searching for image generation API documentation.
|
||||
|
||||
**DataForSEO queries:**
|
||||
|
||||
```
|
||||
Seeds to research:
|
||||
- "image generation api"
|
||||
- "ai image api documentation"
|
||||
- "text to image api tutorial"
|
||||
- "generate image from prompt api"
|
||||
```
|
||||
|
||||
**What to find:**
|
||||
1. Related keywords with Volume > 50, KD < 40
|
||||
2. Long-tail variations we might target
|
||||
3. Question-based keywords ("how to generate image with api")
|
||||
|
||||
**Output format:**
|
||||
```
|
||||
| Keyword | Volume | KD | Intent | Opportunity |
|
||||
|---------|--------|-----|--------|-------------|
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Task 2: Competitor Documentation Structure
|
||||
|
||||
**Goal:** Understand what sections competitors have that we might be missing.
|
||||
|
||||
**Targets to analyze:**
|
||||
1. `docs.replicate.com` — market leader in AI model APIs
|
||||
2. `fal.ai/docs` — direct competitor, similar positioning
|
||||
3. `docs.runware.ai` — budget competitor
|
||||
4. `cloudinary.com/documentation` — gold standard for image APIs
|
||||
|
||||
**What to check:**
|
||||
- Main navigation structure (what sections exist)
|
||||
- Do they have interactive elements? (playgrounds, live code)
|
||||
- Do they have SDK/CLI docs? (we don't yet but plan to)
|
||||
- Any unique sections we don't have?
|
||||
|
||||
**Output format:**
|
||||
```
|
||||
## [Competitor Name]
|
||||
|
||||
**URL:** ...
|
||||
**Main sections:**
|
||||
- Section 1
|
||||
- Section 2
|
||||
...
|
||||
|
||||
**Unique elements:**
|
||||
- ...
|
||||
|
||||
**What we could adopt:**
|
||||
- ...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Task 3: SERP Analysis
|
||||
|
||||
**Goal:** Understand what type of content ranks for our target queries.
|
||||
|
||||
**Queries to check:**
|
||||
1. "image generation api"
|
||||
|
||||
|
||||
|
||||
|
||||
## Deliverables
|
||||
|
||||
Create file: `/banatie-content/research/keywords/docs-seo-analysis-2026-01-02.md`
|
||||
|
||||
Structure:
|
||||
```
|
||||
## Deliverables
|
||||
|
||||
Create file: `/banatie-content/research/keywords/docs-seo-analysis-2026-01-02.md`
|
||||
|
||||
Structure:
|
||||
```
|
||||
2. "ai image api documentation"
|
||||
3. "text to image rest api"
|
||||
4. "generate image from text api"
|
||||
|
||||
**What to note:**
|
||||
- Who ranks in top 10?
|
||||
- What content type? (landing page, docs, tutorial, blog post)
|
||||
- Any featured snippets? What format?
|
||||
- Do any competitors appear?
|
||||
|
||||
**Output format:**
|
||||
```
|
||||
## Query: "[keyword]"
|
||||
|
||||
**Top 3 results:**
|
||||
1. [URL] — [Type: landing/docs/blog] — [Brief description]
|
||||
2. ...
|
||||
3. ...
|
||||
|
||||
**Featured snippet:** Yes/No — [Format if yes]
|
||||
**Our competitors present:** [List]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Task 4: Content Gap Analysis (Optional if budget allows)
|
||||
|
||||
**Goal:** Find keywords competitors rank for that we don't cover.
|
||||
|
||||
**Method:** Use DataForSEO `domain_intersection` or `ranked_keywords` for:
|
||||
- replicate.com/docs
|
||||
- fal.ai/docs
|
||||
|
||||
Filter for keywords with:
|
||||
- Volume > 100
|
||||
- Related to image generation
|
||||
- We have no content for
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## Deliverables
|
||||
|
||||
Create file: `/banatie-content/research/keywords/docs-seo-analysis-2026-01-02.md`
|
||||
|
||||
Structure:
|
||||
```markdown
|
||||
# Documentation SEO Analysis
|
||||
|
||||
**Date:** January 2, 2026
|
||||
**Research by:** @spy
|
||||
|
||||
## Executive Summary
|
||||
[2-3 key findings]
|
||||
|
||||
## 1. Keyword Opportunities
|
||||
[Task 1 results]
|
||||
|
||||
## 2. Competitor Structure Analysis
|
||||
[Task 2 results]
|
||||
|
||||
## 3. SERP Analysis
|
||||
[Task 3 results]
|
||||
|
||||
## 4. Content Gaps (if completed)
|
||||
[Task 4 results]
|
||||
|
||||
## Recommendations
|
||||
[Prioritized list of actionable improvements]
|
||||
|
||||
## Strategic Signals
|
||||
[Anything that should go to banatie-strategy/inbox/]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Notes for @spy
|
||||
|
||||
- Focus on actionable insights, not comprehensive data dumps
|
||||
- If something is strategically important (funding, major competitor move), create separate file in `banatie-strategy/inbox/`
|
||||
- Budget is limited — prioritize Tasks 1-3, Task 4 only if budget remains
|
||||
- We're NOT changing our documentation structure significantly — looking for small wins
|
||||
|
||||
---
|
||||
|
||||
## Success Criteria
|
||||
|
||||
Good research will answer:
|
||||
1. Are there keywords with decent volume that we should add to our pages?
|
||||
2. Are competitors doing something in their docs that we should consider?
|
||||
3. What content type does Google prefer for these queries?
|
||||
4. Any quick wins we can implement this week?
|
||||
|
||||
---
|
||||
|
||||
**End of Brief**
|
||||
|
|
@ -0,0 +1,210 @@
|
|||
# Placeholder Image Niche — Deep Dive Research
|
||||
|
||||
**Date:** 2026-01-02
|
||||
**Type:** Keyword Research + Community Analysis
|
||||
**Budget Used:** ~$0.15 (4 DataForSEO queries)
|
||||
|
||||
---
|
||||
|
||||
## Executive Summary
|
||||
|
||||
The placeholder image niche represents a **significantly larger opportunity** than initially estimated. Total addressable search volume exceeds **30,000+ monthly searches** across variations, with multiple zero-difficulty keywords available.
|
||||
|
||||
**Key Finding:** No AI-generated placeholder services exist. All competitors (placehold.co, picsum.photos, etc.) return random stock photos. Banatie's Live URLs feature can capture this entire market.
|
||||
|
||||
---
|
||||
|
||||
## Keyword Clusters
|
||||
|
||||
### Tier 1: High Volume, Low Difficulty (Priority Targets)
|
||||
|
||||
| Keyword | Volume | KD | Intent | Notes |
|
||||
|---------|--------|----|----|-------|
|
||||
| placeholder image | 14,800 | 18 | Transactional | Base term |
|
||||
| image placeholder | 14,800 | 17 | Transactional | Synonym |
|
||||
| photo placeholder image | 14,800 | 24 | Transactional | Synonym cluster |
|
||||
| image placeholder dark | 4,400 | 2 | Transactional | **+50% YoY growth** |
|
||||
| app placeholder image | 1,900 | 2 | Transactional | **+123% YoY growth** |
|
||||
| placeholder image dark | 1,300 | 6 | Transactional | Dark mode variant |
|
||||
|
||||
### Tier 2: Developer-Specific Keywords
|
||||
|
||||
| Keyword | Volume | KD | Intent | Notes |
|
||||
|---------|--------|----|----|-------|
|
||||
| placeholder image css | 720 | 12-13 | Informational | Code examples |
|
||||
| placeholder image url | 390 | 21 | Navigational | **+85% YoY, direct product match** |
|
||||
| placeholder image html | 320 | 26-33 | Informational | Code examples |
|
||||
| dummy image | 720 | 27 | Transactional | Alternative term |
|
||||
| dummy photo image | 720 | 5 | Transactional | **Very low KD** |
|
||||
|
||||
### Tier 3: Use-Case Specific
|
||||
|
||||
**Profile/Avatar (~2K combined):**
|
||||
| Keyword | Volume | KD |
|
||||
|---------|--------|----|
|
||||
| placeholder profile image | 720 | 21 |
|
||||
| profile image placeholder | 720 | 21 |
|
||||
| profile placeholder image | 720 | 0 |
|
||||
| person placeholder image | 320 | 14-19 |
|
||||
|
||||
**Loading States (~1K combined):**
|
||||
| Keyword | Volume | KD |
|
||||
|---------|--------|----|
|
||||
| image loading placeholder | 210 | 24 |
|
||||
| loading image placeholder | 170 | 0 |
|
||||
| image placeholder gif | 480 | 8 |
|
||||
|
||||
**Size-Specific (~1K combined):**
|
||||
| Keyword | Volume | KD |
|
||||
|---------|--------|----|
|
||||
| 200x200 placeholder image | 390 | 33 |
|
||||
| 150x150 placeholder image | 210 | 13 |
|
||||
| placeholder image 600 x 400 | 260 | 0 |
|
||||
|
||||
### Tier 4: Mobile/Framework (Growing)
|
||||
|
||||
| Keyword | Volume | KD | Trend |
|
||||
|---------|--------|----|----|
|
||||
| ios placeholder image | 590 | 0 | **+126% YoY** |
|
||||
| flutter image placeholder | 480 | 21 | Stable |
|
||||
| android image placeholder | 170 | 2 | Stable |
|
||||
|
||||
---
|
||||
|
||||
## Zero-Difficulty Opportunities
|
||||
|
||||
These keywords have KD 0-5 and should be targeted first:
|
||||
|
||||
1. **profile placeholder image** — 720 vol, KD 0
|
||||
2. **ios placeholder image** — 590 vol, KD 0, +126% growth
|
||||
3. **loading image placeholder** — 170 vol, KD 0
|
||||
4. **placeholder image 600 x 400** — 260 vol, KD 0
|
||||
5. **book cover placeholder image** — 170 vol, KD 0
|
||||
6. **image placeholder dark** — 4,400 vol, KD 2
|
||||
7. **app placeholder image** — 1,900 vol, KD 2
|
||||
8. **android image placeholder** — 170 vol, KD 2
|
||||
9. **dummy photo image** — 720 vol, KD 5
|
||||
10. **vertical image placeholder** — 320 vol, KD 5
|
||||
|
||||
---
|
||||
|
||||
## Community Pain Points (Reddit)
|
||||
|
||||
### Direct Validation of Banatie Use Case
|
||||
|
||||
From r/ClaudeAI "Claude code mcp to generate images?":
|
||||
> "right now my instructions are to just do placeholder image in various sizes. These images are usually then replaced with stock photos etc. I am wondering if there is an mcp that can create or fetch these images for Claude instead."
|
||||
|
||||
**This is EXACTLY our target user.**
|
||||
|
||||
### Existing Pain Points
|
||||
|
||||
1. **Service Reliability:**
|
||||
- "placeholder.com is no more!" — services shut down
|
||||
- "Placekitten has been flakey" — reliability issues
|
||||
- "via.placeholder.com API still works, but is really slow"
|
||||
|
||||
2. **Pricing Frustration:**
|
||||
- "$0.04/image seems high" (re: DALL-E API)
|
||||
- Multiple threads asking for "cheapest image generation API"
|
||||
- Cloudflare mentioned as budget option
|
||||
|
||||
3. **Fragmented MCP Solutions:**
|
||||
- Together AI Image Server
|
||||
- Flux Image MCP Server
|
||||
- OpenAI imagegen-mcp
|
||||
- mcp-hfspace (HuggingFace)
|
||||
- No unified, simple solution
|
||||
|
||||
4. **Category/Relevance Issues:**
|
||||
- People want **relevant** images, not random photos
|
||||
- "Picsum but with categories" projects getting traction
|
||||
- AI-powered placeholder provider got positive reception
|
||||
|
||||
---
|
||||
|
||||
## Competitive Landscape
|
||||
|
||||
### Current Placeholder Services
|
||||
|
||||
| Service | Type | Weakness |
|
||||
|---------|------|----------|
|
||||
| placehold.co | Gray boxes with text | No real images |
|
||||
| picsum.photos | Random stock photos | Not relevant to context |
|
||||
| placekitten.com | Cat photos | Unreliable, shutting down |
|
||||
| via.placeholder.com | Gray boxes | Slow, basic |
|
||||
| static.photos | Categorized stock | Still random within category |
|
||||
|
||||
### Gap in Market
|
||||
|
||||
**ZERO services offer:**
|
||||
- AI-generated placeholders
|
||||
- Context-aware images
|
||||
- MCP/workflow integration
|
||||
- Prompt-based customization
|
||||
|
||||
---
|
||||
|
||||
## Strategic Recommendations
|
||||
|
||||
### 1. Documentation SEO (Immediate)
|
||||
|
||||
Create dedicated doc sections for:
|
||||
- `/docs/placeholders/` — Main landing for placeholder keywords
|
||||
- `/docs/placeholders/dark-mode` — Target 4,400 vol keyword
|
||||
- `/docs/placeholders/profiles` — Avatar/profile use case
|
||||
- `/docs/placeholders/sizes` — Size-specific examples
|
||||
|
||||
### 2. Landing Page Opportunities
|
||||
|
||||
Consider dedicated pages:
|
||||
- `/placeholder-images` — Target 14,800 vol cluster
|
||||
- `/ai-placeholder-generator` — Target "generator" keywords
|
||||
|
||||
### 3. Content Angles
|
||||
|
||||
**Tutorial ideas:**
|
||||
- "How to Generate Dark Mode Placeholder Images with AI"
|
||||
- "AI Placeholders for iOS/Flutter/React Native Apps"
|
||||
- "Replace Stock Photo Placeholders with AI-Generated Images"
|
||||
|
||||
### 4. Live URLs Feature Positioning
|
||||
|
||||
Live URLs should be positioned as:
|
||||
- "AI Placeholder Images" — for the placeholder niche
|
||||
- Works like placehold.co but generates real images
|
||||
- Prompt in URL = instant relevant placeholder
|
||||
|
||||
---
|
||||
|
||||
## Total Addressable Market
|
||||
|
||||
| Cluster | Monthly Searches |
|
||||
|---------|-----------------|
|
||||
| Core placeholder terms | ~15,000 |
|
||||
| Dark mode variants | ~5,700 |
|
||||
| Profile/avatar | ~2,500 |
|
||||
| Developer (CSS/HTML/URL) | ~1,500 |
|
||||
| Size-specific | ~1,000 |
|
||||
| Loading states | ~1,000 |
|
||||
| Mobile/framework | ~1,200 |
|
||||
| Dummy image variants | ~2,000 |
|
||||
| Generator/creator | ~1,000 |
|
||||
| **TOTAL** | **~31,000** |
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. **@strategist:** Review for content prioritization
|
||||
2. **Docs team:** Create placeholder section structure
|
||||
3. **Product:** Ensure Live URLs supports common sizes (200x200, 600x400, etc.)
|
||||
4. **Marketing:** Position Live URLs as "AI Placeholder Service"
|
||||
|
||||
---
|
||||
|
||||
## Sources
|
||||
|
||||
- DataForSEO keyword suggestions (4 queries)
|
||||
- Reddit: r/webdev, r/ClaudeAI, r/mcp, r/nextjs
|
||||
- Brave Search community analysis
|
||||
Loading…
Reference in New Issue