Docs · AEO
Competitor AEO diff (premium)
Run page-audit on 2–5 URLs in parallel; return rankings, head-to-head category breakdowns, and where the first URL beats vs trails competitors.
POST
/v1/aeo/competitor-diff Pass a list of 2–5 URLs. First entry is treated as your page; the rest are competitors. Internally runs page-audit on each in parallel, then aggregates: overall ranking, per-category head-to-head, the categories where you win, the categories where you trail. This is the deliverable AEO consultants actually invoice for — "score my page vs competitors" is the line item, not "score my page." Bills 3 credits flat regardless of count (1 URL = no diff possible, 6+ rejected).
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| urls | array | yes | — | 2–5 URLs. First is your page; rest are competitors. |
Request
curl -X POST https://api.qcrawl.com/v1/aeo/competitor-diff \
-H "Authorization: Bearer osk_..." \
-d '{"urls": ["https://qcrawl.com/docs/intel-geoip/", "https://ipinfo.io/", "https://ipapi.co/"]}' Response
{
"status": "success",
"your_url": "https://qcrawl.com/docs/intel-geoip/",
"competitor_urls": ["https://ipinfo.io/", "https://ipapi.co/"],
"rankings": [
{"rank": 1, "url": "https://qcrawl.com/...", "overall_score": 84.0, "overall_grade": "B"},
{"rank": 2, "url": "https://ipinfo.io/", "overall_score": 71.0, "overall_grade": "C"},
{"rank": 3, "url": "https://ipapi.co/", "overall_score": 68.0, "overall_grade": "C"}
],
"head_to_head_by_category": {
"discoverability": [{"rank": 1, "url": "...", "score": 90}, ...],
"structured_data": [{"rank": 1, "url": "...", "score": 80}, ...],
"citability": [{"rank": 1, "url": "...", "score": 85}, ...]
},
"your_wins": ["discoverability", "citability"],
"your_loses": ["structured_data"],
"leader_url": "https://qcrawl.com/...",
"leader_overall_score": 84.0
}