The Topic Generator helps you discover content ideas by:
- Analyzing reference blogs for content gaps
- Generating AI-powered topic suggestions
- Validating topics with Google Trends (free)
- Optional: Getting search volumes from Google Ads API
- ✅ AI-powered topic generation
- ✅ Content gap analysis
- ✅ Google Trends validation
- ✅ Topic suggestions matched to blog style
- 📊 Search volume data
- 📈 Competition analysis
- 💰 CPC estimates
- 🎯 Keyword research
- Enter Reference Blog URL in sidebar
- Enter OpenAI API Key in sidebar
- Click "Generate Topic Ideas" button
- Review suggestions with trend data
- Click "Use This Topic" to auto-fill
That's it! The basic topic generator works immediately.
If you want search volume and competition data, follow these steps:
- Google Ads account with active campaigns
- Basic spending ($10-50/month minimum)
- Developer token from Google
- Go to Google Cloud Console
- Create new project: "BlogAgents Keywords"
- Note your Project ID
- Go to "APIs & Services" > "Library"
- Search for "Google Ads API"
- Click "Enable"
- Go to Google Ads
- Tools & Settings > Setup > API Center
- Request developer token
- Wait for approval (usually 1-2 business days)
- Copy your developer token
- Go to Google Cloud Console
- APIs & Services > Credentials
- Click "Create Credentials" > "OAuth client ID"
- Application type: "Desktop app"
- Name: "BlogAgents"
- Download JSON (save as
client_secrets.json)
Run this Python script to generate refresh token:
from google_auth_oauthlib.flow import InstalledAppFlow
# Your OAuth2 credentials
CLIENT_ID = "your_client_id_here"
CLIENT_SECRET = "your_client_secret_here"
# OAuth2 scopes for Google Ads
SCOPES = ['https://www.googleapis.com/auth/adwords']
# Create flow
flow = InstalledAppFlow.from_client_config(
{
"installed": {
"client_id": CLIENT_ID,
"client_secret": CLIENT_SECRET,
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
}
},
scopes=SCOPES
)
# Run local server for authentication
credentials = flow.run_local_server(port=8080)
# Print refresh token
print(f"Refresh Token: {credentials.refresh_token}")- Go to Google Ads
- Look at top-right corner
- Copy customer ID (format: 123-456-7890)
- Remove hyphens: 1234567890
- Open BlogAgents app
- Sidebar: Check "Enable Google Ads API"
- Expand "Google Ads API Configuration"
- Enter:
- Developer Token: From Step 3
- Client ID: From Step 4
- Client Secret: From Step 4
- Refresh Token: From Step 5
- Customer ID: From Step 6 (no hyphens)
- Click "Test Google Ads Connection"
- Should see "✅ Connected to Google Ads API!"
-
Configure (One Time):
- Add OpenAI API key
- Add Reference Blog URL
- Optional: Configure Google Ads API
-
Generate Topics:
- Click "🎯 Generate Topic Ideas"
- Wait for AI analysis
- Review 8-10 topic suggestions
-
Review Data:
- Angle: Unique perspective
- Keywords: SEO keywords
- Rationale: Why it works
- Content Type: Guide, Tutorial, etc.
- Trend: Google Trends score
- Search Volume: (if Google Ads enabled)
- Competition: (if Google Ads enabled)
-
Select Topic:
- Click "✏️ Use This Topic"
- Auto-fills main form
- Generate content as normal
- Score: 0-100 interest level
- 🔥 Hot: 75+ (very popular)
- 📈 Rising: 50-75 (growing interest)
- ➡️ Steady: 25-50 (consistent)
- 📉 Low: 0-25 (low interest)
- Search Volume: Monthly searches
- Competition: LOW/MEDIUM/HIGH
- Competition Index: 0-100 score
- Verify developer token is approved
- Check OAuth credentials are correct
- Ensure customer ID has no hyphens
- Confirm Google Ads account has active campaigns
- Check OpenAI API key is valid
- Verify reference blog URL is accessible
- Try different reference blog
- Check internet connection
- Google Ads API is optional
- Google Trends always works (no auth needed)
- Verify all 5 credentials are entered correctly
- Test connection before generating topics
- Start Simple: Use without Google Ads first
- Test Reference Blogs: Try different blogs for variety
- Save Good Topics: Use sheets integration to store ideas
- Review Trends: Higher trend scores = more timely content
- Check Competition: Lower competition = easier to rank
- Topic generation: ~$0.01-0.05 per request
- Uses same model as content generation
- FREE with active Google Ads account
- No per-request charges
- Requires active campaign spending
- FREE always
- No authentication required
- Built into the app
- Store credentials securely
- Don't share API keys
- Use environment variables in production
- Rotate tokens periodically
- Monitor API usage
For issues or questions:
- Check troubleshooting section first
- Review Google Ads API Docs
- Contact support with specific error messages
Planned features:
- Topic calendar planning
- Save favorite topics to Sheets
- Batch topic generation
- Competitor topic analysis
- Trending topics dashboard