ScavioScavio
ProductPricingDocs
Sign InGet Started
  1. Home
  2. Tutorials
  3. How to Check Content Rank Before Writing
Tutorial

How to Check Content Rank Before Writing

Run a pre-writing check against your target SERP to confirm you can rank before investing writing time. Scavio-powered content triage.

Get Free API KeyAPI Docs

Most content teams write first and check rank potential later, wasting hours on posts that cannot rank. A 60-second Scavio pre-writing check surfaces the SERP difficulty, AI Overview presence, and domain-authority gap before you start. This tutorial wires the check into your editorial process.

Prerequisites

  • Python 3.10+
  • A Scavio API key
  • A proposed post title or target keyword

Walkthrough

Step 1: Query the target keyword

Pull SERP + AI Overview.

Python
import requests, os
API_KEY = os.environ['SCAVIO_API_KEY']

def pre_check(keyword):
    r = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'query': keyword, 'include': ['ai_overview', 'paa']})
    return r.json()

Step 2: Score top-10 authority

Count DR>50 domains in top 10. High count = hard SERP.

Python
HIGH_AUTH = {'wikipedia.org', 'forbes.com', 'techcrunch.com', 'nytimes.com'}
def authority_score(results):
    top10 = results.get('organic_results', [])[:10]
    return sum(1 for r in top10 if any(d in r['link'] for d in HIGH_AUTH))

Step 3: Check AI Overview presence

If an overview already exists, ranking is harder but GEO-valuable.

Python
def has_overview(r):
    return bool(r.get('ai_overview'))

Step 4: Report a go/no-go verdict

Rules of thumb baked into a 30-line scorer.

Python
def verdict(r):
    auth = authority_score(r)
    if auth >= 6: return 'NO-GO: top 10 dominated by DR>50'
    if auth >= 4: return 'MAYBE: hard but possible with unique angle'
    return 'GO: top 10 has room'

Step 5: Add to your editorial CMS

Drop the verdict on every new draft ticket.

Bash
# Notion/Linear webhook example:
POST /webhook { "verdict": "MAYBE", "keyword": "..." }

Python Example

Python
import os, requests

API_KEY = os.environ['SCAVIO_API_KEY']
HIGH = {'wikipedia.org', 'forbes.com', 'techcrunch.com'}

def check(kw):
    r = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'query': kw, 'include': ['ai_overview']}).json()
    top = r.get('organic_results', [])[:10]
    auth = sum(1 for x in top if any(d in x['link'] for d in HIGH))
    return {'authority_count': auth, 'ai_overview': bool(r.get('ai_overview')), 'verdict': 'NO-GO' if auth >= 6 else 'GO'}

print(check('how to build an ai agent'))

JavaScript Example

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;
const HIGH = ['wikipedia.org', 'forbes.com', 'techcrunch.com'];
export async function check(kw) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query: kw, include: ['ai_overview'] })
  });
  const d = await r.json();
  const top = (d.organic_results || []).slice(0, 10);
  const auth = top.filter(x => HIGH.some(h => x.link.includes(h))).length;
  return { authority_count: auth, ai_overview: !!d.ai_overview, verdict: auth >= 6 ? 'NO-GO' : 'GO' };
}

Expected Output

JSON
Per-keyword verdict in under 5 seconds. Typical team saves 20-40 hours/month skipping no-go topics.

Related Tutorials

  • How to Build an SEO Audit Tool with SERP and Competitor Analysis
  • How to Build a GEO Audit Tool
  • How to Track SEO Rankings Daily with the Scavio API

Frequently Asked Questions

Most developers complete this tutorial in 15 to 30 minutes. You will need a Scavio API key (free tier works) and a working Python or JavaScript environment.

Python 3.10+. A Scavio API key. A proposed post title or target keyword. A Scavio API key gives you 50 free credits on signup.

Yes. The free tier includes 50 credits on signup, which is more than enough to complete this tutorial and prototype a working solution.

Scavio has a native LangChain package (langchain-scavio), an MCP server, and a plain REST API that works with any HTTP client. This tutorial uses the raw REST API, but you can adapt to your framework of choice.

Related Resources

Best Of

Best API for Agency SEO Reporting in 2026

Read more
Best Of

Best API for Content Rank Checking Before Writing in 2026

Read more
Use Case

AppSumo SEO Tool to API Migration

Read more
Use Case

Content Pre-Write Rank Check

Read more
Glossary

SEO API Dashboard Pattern

Read more
Comparison

Semrush API vs Raw SERP API

Read more

Start Building

Run a pre-writing check against your target SERP to confirm you can rank before investing writing time. Scavio-powered content triage.

Get Free API KeyRead the Docs
ScavioScavio

Real-time search API for AI agents. Search every platform, not just Google.

Product

  • Features
  • Pricing
  • Dashboard
  • Affiliates

Developers

  • Documentation
  • API Reference
  • Quickstart
  • MCP Integration
  • Python SDK

Alternatives

  • Tavily Alternative
  • SerpAPI Alternative
  • Firecrawl Alternative
  • Exa Alternative

Tools

  • JSON Formatter
  • cURL to Code
  • Token Counter
  • All Tools

© 2026 Scavio. All rights reserved.

Featured on TAAFT
Terms of ServicePrivacy Policy