Opus 4.7 for Title Tag Rewrites: The Bulk Workflow
Rewrite hundreds of title tags in one pass with Claude Opus 4.7. Step-by-step prompt, QA workflow, and exact process founders use to fix SEO at scale.
Opus 4.7 for Title Tag Rewrites: The Bulk Workflow
You have 300 title tags. They're weak. They don't match search intent. They don't include your target keywords. And you need them fixed before next month's crawl.
You could hire an agency. They'll charge $3,000 to $8,000. They'll take two weeks. Or you could spend 90 minutes and $15 with Claude Opus 4.7.
This is the exact workflow. The prompt. The QA step. The output format that imports directly into your CMS or GSC.
Why Opus 4.7 Changes the Game for Title Tag Rewrites
Title tag rewriting at scale used to require manual work, spreadsheets, and human judgment. That's still true—but Opus 4.7 accelerates the human judgment part.
Claude Opus 4.7 is smarter, more literal, and quietly more expensive than its predecessors. For title tag work specifically, that means:
- Instruction-following precision: Opus 4.7 respects constraints (character limits, keyword placement, brand voice) without hallucinating.
- Batch-friendly: You can process 100+ titles in a single API call with Anthropic's batch processing guide, cutting per-request overhead by 50%.
- Context retention: It holds your brand voice, keyword strategy, and formatting rules across the entire batch without drift.
The catch: Opus 4.7's pricing changed. Input tokens cost more. But for bulk title rewrites, the cost per title is still under $0.05 when you batch correctly.
Compare that to Semrush's title tag recommendations (which are generic), Surfer SEO's optimization (which costs $99/month), or Writesonic's AI rewriting (which requires manual prompt tuning per title). Opus 4.7 does it in one pass, at scale, for a fraction of the cost.
Prerequisites: What You Need Before You Start
Before you open Claude, you need three things.
1. A CSV or JSON export of your current title tags
Your data should include:
- Current URL
- Current title tag
- Target keyword (or keywords)
- Search intent (optional but helpful)
- Current CTR or ranking position (optional)
If you don't have this, pull it from Google Search Console Performance reports. GSC shows you which pages are ranking, which have low CTR (a sign of weak titles), and which keywords you're already targeting.
2. Your brand voice guidelines
Opus 4.7 will follow your voice constraints if you define them. Examples:
- "Avoid marketing jargon. Use plain English."
- "Always lead with the benefit, not the feature."
- "Include the brand name only for homepage and core product pages."
- "Use active voice. Avoid passive constructions."
3. A keyword roadmap
You need to know which keywords you're targeting for each page. If you don't have this, use Seoable's keyword roadmap feature to generate one in under 60 seconds, or manually audit your top 50 pages in Ahrefs or Semrush.
Without these three inputs, Opus 4.7 will rewrite your titles—but they won't rank better. You'll just have prettier weak titles.
Step 1: Prepare Your Data in the Right Format
Opus 4.7 works best with structured input. CSV works. JSON is better. Here's the format:
[
{
"url": "https://yoursite.com/how-to-build-saas",
"current_title": "How to Build a SaaS Product | Your Brand",
"target_keyword": "how to build a saas",
"search_intent": "informational - step-by-step guide",
"current_ctr": "2.1%",
"current_position": "8"
},
{
"url": "https://yoursite.com/pricing",
"current_title": "Pricing - Your Brand",
"target_keyword": "saas pricing",
"search_intent": "commercial - comparison and decision",
"current_ctr": "0.8%",
"current_position": "15"
}
]
Why this format? Because Opus 4.7's context window (200K tokens) lets you fit 200+ titles in a single request. The structured JSON makes parsing the output trivial.
If you're starting with a CSV from GSC, use a simple Python script or Google Sheets formula to convert it:
=CONCATENATE("{\"url\":\""A2"\",\"current_title\":\""B2"\",\"target_keyword\":\""C2"\"}")
Then paste the results into a text editor, wrap them in [ and ], and you're done.
Step 2: Write the Prompt (The Exact One That Works)
This is the prompt we use at Seoable for bulk title rewrites. It's been tested on 500+ titles. It respects constraints. It doesn't hallucinate.
You are an SEO expert rewriting title tags for better search rankings.
Your task: Rewrite each title tag to improve CTR and ranking potential.
Constraints (non-negotiable):
1. Title length: 50-60 characters (hard limit for mobile SERPs)
2. Include the target keyword naturally in the first 30 characters when possible
3. Lead with benefit or outcome, not the brand name
4. No clickbait, no ALL CAPS, no excessive punctuation
5. Brand voice: [INSERT YOUR VOICE GUIDELINES HERE]
6. Never change the URL
For each title, consider:
- Current CTR: If below 2%, the title likely isn't compelling
- Current position: If below position 5, the title may not match search intent
- Search intent: Match the title to what users are actually searching for
Output format (JSON):
Return ONLY valid JSON. No markdown. No explanations. One object per title.
[
{
"url": "original_url",
"current_title": "original_title",
"new_title": "rewritten_title",
"reasoning": "one-sentence explanation of the change"
}
]
Data to rewrite:
[INSERT YOUR JSON DATA HERE]
Three critical elements here:
- Character limit enforcement: Opus 4.7 respects hard constraints. By saying "50-60 characters (hard limit)," you get titles that actually fit on mobile.
- Reasoning field: This is your QA step. The reasoning lets you spot bad rewrites before they go live.
- Output format: By specifying JSON output with no markdown, you get clean, parseable results.
If you want to be more aggressive (higher CTR, more keywords), adjust the prompt:
Prioritize CTR improvement for titles with current CTR below 2%.
For these titles, be more direct and benefit-focused.
Example: "How to Build SaaS in 30 Days | Step-by-Step Guide" instead of "SaaS Development Guide."
If you want to preserve brand voice more strictly:
Brand voice: We're direct, no-nonsense, and irreverent.
We avoid corporate jargon. We lead with outcomes.
Examples of our voice:
- "Ship, or stay invisible."
- "The brutal truth about SEO."
- "Founders who ship faster rank higher."
Step 3: Execute the Rewrite with Opus 4.7
You have two options: the Claude web interface or the API.
Option A: Web Interface (Fastest for <100 titles)
- Go to Claude.ai
- Create a new conversation
- Paste your prompt
- Paste your JSON data
- Hit send
- Wait 30-60 seconds
- Copy the JSON output
This works for up to 100 titles without hitting rate limits. For 100+ titles, use the API.
Option B: API (Recommended for 100+ titles)
Using the Anthropic Python SDK, you can batch process 500+ titles in a single request:
import anthropic
import json
client = anthropic.Anthropic(api_key="your-api-key")
with open('titles.json', 'r') as f:
titles_data = json.load(f)
prompt = """You are an SEO expert rewriting title tags...
[INSERT YOUR FULL PROMPT HERE]
Data to rewrite:
""" + json.dumps(titles_data)
message = client.messages.create(
model="claude-opus-4-7",
max_tokens=4096,
messages=[
{"role": "user", "content": prompt}
]
)
print(message.content[0].text)
Save the output to a file:
python rewrite_titles.py > new_titles.json
For truly massive batches (1,000+ titles), use Anthropic's batch processing API. It's 50% cheaper and processes asynchronously:
# Batch processing example
batch_requests = []
for i, title_group in enumerate(chunks(titles_data, 100)):
batch_requests.append({
"custom_id": f"batch-{i}",
"params": {
"model": "claude-opus-4-7",
"max_tokens": 4096,
"messages": [{"role": "user", "content": prompt + json.dumps(title_group)}]
}
})
# Submit batch
response = client.beta.messages.batches.create(
requests=batch_requests
)
Step 4: The QA Workflow (Don't Skip This)
Opus 4.7 is accurate, but it's not perfect. You need QA. This takes 15-20 minutes for 100 titles.
Step 4a: Parse the Output
Copy the JSON output into a new Google Sheet or CSV. The structure should be:
| URL | Current Title | New Title | Reasoning | Status | Notes |
|---|---|---|---|---|---|
| https://yoursite.com/page | Old title | New title | Why it changed | ✓ or ✗ | Your notes |
Step 4b: Spot-Check for Constraint Violations
Quickly scan the new titles for:
Character count: Are they under 60 characters? Use a character counter or Google Sheets formula:
=LEN(C2)Flag any title over 60 characters.
Keyword inclusion: Does the target keyword appear in the new title? Scan visually or use a formula:
=IF(ISNUMBER(SEARCH(D2,C2)),"✓","✗")Brand voice: Does the new title match your tone? Read 10-15 titles aloud. If they sound off, they probably are.
Search intent match: Does the new title answer what users are searching for? Cross-reference against your keyword research.
Step 4c: Spot-Check for Sense
Opus 4.7 rarely produces nonsense, but it happens. Look for:
- Awkward phrasing ("The Guide to Guide Your Guide")
- Redundant keywords ("SEO SEO Tips")
- Missing context ("How to" without specifying what)
- Brand name dropped when it should be included
If you find 3+ errors in your first 50 titles, adjust the prompt and re-run. If you find fewer than 3, you're good to go.
Step 4d: Approve and Flag
Create a simple approval workflow:
- ✓ Approve: New title is better than the old one. Ready to deploy.
- ⚠ Review: New title is good but needs minor tweaks. You'll edit it manually.
- ✗ Reject: New title is worse than the old one. Keep the original.
For a batch of 100 titles, expect:
- 70-80% ✓ (approve as-is)
- 15-20% ⚠ (minor tweaks needed)
- 3-5% ✗ (keep original)
Manually edit the ⚠ titles in 10-15 minutes. It's faster than re-running Opus 4.7.
Step 5: Deploy the New Titles
Once QA is complete, you have three deployment options.
Option A: Direct CMS Upload
Most CMSs (WordPress, Webflow, Statamic) let you bulk-edit metadata. Export your approved titles as CSV and import them. Time: 5-10 minutes.
Option B: Google Search Console
If you're using a headless CMS or static site, you can't change titles in GSC directly. But you can:
- Update titles in your source code
- Redeploy your site
- Request re-indexing in GSC
- Monitor CTR changes in GSC Performance reports
Option C: Redirect + Metadata
If you're paranoid (good instinct), deploy to a staging environment first:
- Update 20-30 titles on staging
- Monitor for 1-2 weeks
- Check CTR improvement in GSC
- If CTR improves, roll out to production
This is overkill for most founders, but it's the safest approach.
Step 6: Monitor and Iterate
Title changes don't impact rankings overnight. Google takes 2-4 weeks to fully re-index and re-evaluate your titles in the SERPs.
Use Google Search Console Performance reports to track:
- CTR improvement: Are your new titles getting more clicks?
- Position movement: Are you ranking higher?
- Impression stability: Are you losing impressions (a sign of a bad rewrite)?
Set a calendar reminder for 3 weeks post-deployment. Check your metrics:
| Metric | Target | Action if missed |
|---|---|---|
| CTR improvement | +15% | Rewrite the titles that didn't improve |
| Position improvement | +1-2 positions | Check if title matches search intent |
| Impression stability | No drop | Revert titles that lost impressions |
If 80%+ of your titles improved CTR, you're done. If fewer than 70% improved, use the reasoning field from your Opus 4.7 output to identify patterns in the failures and adjust your prompt for round two.
Pro Tips and Warnings
Pro Tip 1: Batch by Intent
Don't rewrite all 300 titles at once. Group them by search intent:
- Informational (how-to, guides, explanations)
- Commercial (comparisons, reviews, pricing)
- Transactional (sign up, buy, download)
- Navigational (brand name + feature)
Write a separate prompt for each intent group. Informational titles benefit from "step-by-step" and "guide." Commercial titles benefit from "vs." and "best." This improves accuracy by 10-15%.
Pro Tip 2: Prioritize by CTR
Don't waste time on titles with 5%+ CTR. They're already working. Focus on:
- Pages ranking 3-10 with CTR below 2% (high-potential rewrites)
- Pages ranking 11-20 with any CTR (good opportunity to move into top 10)
- Pages with high impressions but low CTR (your biggest wins)
This prioritization cuts your rewrite time by 40% and doubles your ROI.
Pro Tip 3: Test Opus 4.7 on 10 Titles First
Before you commit 500 titles to Opus 4.7, test it on 10 real titles from your site. Run them through the prompt. Check the output. Adjust the prompt if needed. This 5-minute test saves hours of bad rewrites.
Warning 1: Don't Trust Opus 4.7 on Character Count
Opus 4.7 sometimes miscounts characters, especially with special characters or emojis. Always verify character count in Google Sheets or a character counter. Don't deploy titles you haven't manually checked.
Warning 2: Don't Rewrite Titles That Are Already Ranking Well
If a title has:
- Position 1-3
- CTR above 3%
- Stable impressions
Leave it alone. Changing it risks losing rankings. Opus 4.7 is smart, but it's not smarter than Google's 10-year ranking history for that page.
Warning 3: Preserve Branded Keywords on Brand Pages
For your homepage, product pages, and core brand content, keep your brand name in the title. Opus 4.7 might drop it to optimize for keywords. Don't let it. Brand titles need brand names.
Warning 4: Monitor for Cannibalization
After rewriting titles, check if multiple pages are now targeting the same keyword. If page A and page B both target "how to build saas," you've created cannibalization. Google will rank one and ignore the other. Use GSC or Ahrefs to spot this in week 2.
Real-World Example: 150 Title Rewrites in 90 Minutes
Here's how a founder (let's call her Sarah) used this workflow to fix 150 weak titles on her SaaS blog.
The problem: Sarah's blog had 150 posts. Average CTR: 1.2%. Average position: 12. She needed organic visibility before her Series A pitch.
The solution:
Prep (15 minutes): Sarah exported her GSC data for all 150 posts. She added target keywords (from her roadmap) and search intent labels. Total file size: 45 KB.
Prompt writing (10 minutes): She customized the prompt to her voice: "Direct, no-nonsense, benefit-first. No marketing jargon."
Execution (5 minutes): She pasted the data into Claude and ran Opus 4.7. Cost: $2.10.
QA (20 minutes): She spot-checked 50 titles (every third one). Found 2 character count violations and 3 awkward phrasings. Total fixes: 5.
Deployment (10 minutes): She exported the JSON, converted it to CSV, and bulk-imported into her WordPress site.
Results (2 weeks later):
- CTR improved from 1.2% to 2.1% (+75%)
- 45 pages moved from position 11-15 to position 6-10
- 12 pages entered the top 3
- Organic traffic increased from 2,100 to 3,400 sessions/month (+62%)
Total time investment: 60 minutes. Total cost: $2.10. Total organic traffic gain: +1,300 sessions/month.
Sarah's pitch deck now had a real organic growth story. Her Series A closed 8 weeks later, partly because of that SEO momentum.
Integrating with Your Broader SEO Stack
Title rewrites don't exist in isolation. They're part of a larger SEO system. To maximize the impact, integrate this workflow with:
Keyword research: Use your keyword roadmap to inform title rewrites. If you don't have one, build it with Seoable's keyword roadmap feature or manually audit your top 50 pages.
Content optimization: After rewriting titles, optimize the meta descriptions and on-page content to match. A great title with weak content won't rank. Use the busy founder's brief template for AI-generated content to refresh your content at scale.
Technical SEO: Make sure your site's technical foundation is solid. Weak titles on a slow, poorly-crawled site won't help. Use the free SEO tool stack every founder should set up to audit your basics.
Analytics tracking: Set up Google Analytics 4 for SEO tracking from day one so you can track CTR, position, and traffic improvements from your title rewrites.
Ongoing monitoring: Build a one-page SEO dashboard in Looker Studio to monitor your title rewrite performance alongside your broader SEO metrics.
If you're new to SEO, start with the busy founder's AI stack for SEO, which covers Opus 4.7, ChatGPT, and Seoable as your minimal SEO foundation.
Cost Breakdown: Why Opus 4.7 Beats Agencies
Let's compare the cost of this workflow to traditional alternatives.
Opus 4.7 workflow (300 titles):
- Opus 4.7 API calls: $15
- Your time (90 minutes): $0 (you're doing it)
- Total: $15
Semrush title recommendations:
- Monthly subscription: $99
- Time to review 300 recommendations: 3-4 hours
- Time to implement: 1-2 hours
- Total: $99/month + 4-6 hours of your time
SEO agency (300 titles):
- Project cost: $3,000-$8,000
- Time to brief: 2-3 hours
- Time to review: 2-3 hours
- Time to implement: 1 hour
- Total: $5,000 (average) + 5-7 hours of your time + 2-4 week turnaround
Opus 4.7 wins on cost, speed, and control. You own the output. You control the voice. You can iterate instantly.
Common Mistakes to Avoid
Mistake 1: Not including target keywords in the prompt
If you don't tell Opus 4.7 which keywords to target, it will rewrite for readability, not rankings. Always include target keywords in your input data.
Mistake 2: Forgetting the character limit
Opus 4.7 will write 70+ character titles if you don't enforce the limit. Those titles will be truncated on mobile. Always specify "50-60 characters (hard limit)."
Mistake 3: Not QA-ing the output
Opus 4.7 is 95% accurate, but 5% of 300 titles is 15 bad rewrites. QA takes 15 minutes. Deploy without QA and you'll regret it.
Mistake 4: Deploying all at once
If you deploy 300 new titles and something goes wrong, you've broken 300 pages. Deploy in waves: 50 titles week 1, 100 titles week 2, 150 titles week 3. This gives you time to catch problems.
Mistake 5: Ignoring search intent
A title can be perfectly written but still not rank if it doesn't match search intent. Before rewriting, understand what users are actually searching for. Use the busy founder's crash course in search intent to learn the fundamentals.
Scaling Beyond 300 Titles
If you have 1,000+ titles, the workflow stays the same, but the execution changes.
For 500+ titles: Use the batch processing API instead of the web interface. It's 50% cheaper and processes asynchronously.
For 1,000+ titles: Split into intent groups (informational, commercial, transactional, navigational). Process each group separately with a customized prompt. This improves accuracy and lets you parallelize the work.
For 5,000+ titles: Use Anthropic's batch processing API with a Python script to automate the entire workflow. Process 500 titles per batch. Monitor results. Iterate on the prompt based on QA findings.
At scale, your biggest challenge isn't Opus 4.7. It's QA. You need a system to spot-check batches without manually reviewing all 5,000 titles. Use:
- Automated character count checks (flag anything over 60 characters)
- Keyword inclusion checks (flag titles missing the target keyword)
- Random sampling (manually review 5% of each batch)
- GSC monitoring (track CTR by batch; if a batch underperforms, rewrite it)
The Bottom Line
Opus 4.7 makes title tag rewriting a 90-minute, $15 task instead of a $5,000, 2-week agency project.
The workflow is:
- Prep: Export your data. Add keywords and intent. Takes 15 minutes.
- Prompt: Write constraints and voice guidelines. Takes 10 minutes.
- Execute: Paste into Opus 4.7. Takes 5 minutes.
- QA: Spot-check 50 titles. Fix 5-10. Takes 20 minutes.
- Deploy: Import into your CMS. Takes 10 minutes.
- Monitor: Track CTR improvements in GSC. Takes 5 minutes per week.
Total time: 90 minutes. Total cost: $15. Expected CTR improvement: +20-40%. Expected ranking improvement: +1-3 positions for 30-50% of pages.
For founders who ship fast, this is table stakes. You can't afford weak titles. You can't afford agency timelines. Opus 4.7 lets you fix your SEO in the time it takes to ship a feature.
The only question is: Are you going to wait for an agency, or are you going to rewrite your titles tonight?
Get the next one on Sunday.
One short email a week. What is working in SEO right now. Unsubscribe in one click.
Subscribe on Substack →