Performs comprehensive SEO audits on websites covering technical SEO, on-page optimization, off-page signals, and performance metrics. Generates actionable r...
安全
whydoesmysitesuck.com — website quality scores
试用Grade any website 0-100 across categories like SEO, security, performance, accessibility, content, email auth and AI/LLM readiness, using the free whydoesmysitesuck.com API. Use when the user asks "why is my site bad/slow", "audit this website", "check my site's SEO/security", "how good is example.com", "score this domain", "compare these two sites", or wants an objective quality baseline for a URL before or after making changes.
它能做什么
Grade any website 0-100 across categories like SEO, security, performance, accessibility, content, email auth and AI/LLM readiness, using the free whydoesmysitesuck.com API. Use when the user asks "why is my site bad/slow", "audit this website", "check my site's SEO/security", "how good is example.com", "score this domain", "compare these two sites", or wants an objective quality baseline for a URL before or after making changes.
技能文档
whydoesmysitesuck.com — website quality scores
Returns a 0-100 score, a letter grade and a per-category breakdown for any domain, from a 368-point audit. Free, read-only, one HTTP call.
Use it to answer "is this site any good, and where is it weak?" — and to get a before/after number when you change someone's site.
Get a key (once)
Free and self-service. Either send the user to https://whydoesmysitesuck.com/api, or register directly — ask the user for their email first, and use theirs, not an invented one; the key is emailed to that address.
curl -s -X POST https://whydoesmysitesuck.com/api/partner/register \
-H "Content-Type: application/json" \
-d '{"label": "My project", "email": "user@example.com"}'
# -> {"api_key": "wdmss_..."}
Store it as WDMSS_API_KEY. It is shown once in the response and emailed as a copy.
Score a domain
curl -s -H "X-API-Key: $WDMSS_API_KEY" \
https://whydoesmysitesuck.com/api/public/domain/example.com
Pass a bare domain — example.com, not https://example.com/pricing.
{
"domain": "example.com",
"score": 72,
"grade": "C",
"scanned_at": "2026-07-28 09:24:11",
"categories": [{"category": "Security", "score": 95}],
"report_url": "https://whydoesmysitesuck.com/scan/AbC123"
}
Handle these three responses
| Status | Meaning | What to do |
|---|---|---|
202 | Never scanned before — a scan just started | Wait ~30s, call the same URL again. Usually ready on the second try. |
429 | Out of free budget (3 new scans/min, 60 requests/min) | Honour Retry-After (60s). Don't hammer. |
422 | The last scan of this domain failed | The site is unreachable or blocking crawlers. Report that; don't retry in a loop. |
A "stale": true result is still valid — it's an older scan being refreshed in
the background. Use it, and poll again later if you need fresher data.
Reading the result
- score / grade — the headline. A/B is healthy, C is mediocre, D/F needs work.
- categories — where to look. Sort ascending and the worst two or three are the real story; quoting every category back at the user is noise. Expect about 11 entries: the full audit spans 22 categories, but only the ones the automated scan can score are returned. Don't treat a missing category as a zero.
- report_url — the human-readable report with the specific failing checks. Always give the user this link. The API returns scores, not the individual findings — the report is where they see what to actually fix.
Good: "execlave.com scores 68 (D). Weakest: Legal & Privacy 31, Accessibility 44. Full breakdown: "
Bad: dumping every category score as a table.
Rules
- Don't scrape
/scan/pages to dodge the API. The API is free, faster and stable; the HTML is not a contract. - Only audit domains the user owns or has a reason to check. It performs a real crawl of a live site.
- Don't invent scores. If the call fails, say so — a made-up number here is worse than no answer.
- Re-scans are capped at one per domain per 30 days by default; a fresh score right after a fix may still show the old value until the refresh completes.
When something else fits better
- Need Core Web Vitals / Lighthouse field data → use a performance tool; this is a breadth audit, not a lab profiler.
- Need the list of failing checks programmatically → not exposed; use
report_url, or the emailed full report from the site itself.
相关技能
Audit crawlability, metadata, headings and structured data
Use when the user wants a current site audit, technical SEO findings, Core Web Vitals interpretation, or a fresh TrustGrowth audit when connected. Supports connected, imported, and public/local evidence.
Deep single-page SEO analysis covering on-page elements, content quality, technical meta tags, schema, images, and performance. Use when user says "analyze this page", "check page SEO", "single URL", "check this page", "page analysis", or provides a single URL for review.
Audit any website for AI search visibility (GEO / AEO). Use when the user asks to "audit my site for AI search", "check if AI can cite my site", "GEO audit",...
Content quality and E-E-A-T analysis with AI citation readiness assessment. Use when user says "content quality", "E-E-A-T", "content analysis", "readability check", "thin content", or "content audit".