Troubleshooting

Common SEOFix problems by symptom, with the cause and the fix: stuck or failed audits, blocked pages, verification, Search Console, rechecks, API errors and email.

Updated 8 October 2026View as Markdown

Find your symptom below. Each row gives the likely cause and what to do, with a link to the full article. If nothing here matches, email [email protected] with the audit or site ID.

Audits

Symptom Cause Fix
Audit stays Queued Crawlers run several audits at once; yours waits its turn. A queued audit can wait a while when crawlers are busy. Wait. If its job is lost, SEOFix fails it after 10 minutes with reaped: never started and refunds the reserved credits. Then start it again.
Audit stays Running with no progress The crawler stopped reporting progress. After 15 minutes without progress SEOFix fails it with reaped: stalled. You pay only for pages crawled. Start a new audit.
Audit is Running but slow Polite crawling: 2 requests per second by default, slower when your site slows down. A 10,000-page audit takes about 85 minutes at 2 req/s. Verify the site to allow up to 10 req/s. See Verify site ownership.
Audit Failed, reason reaped: never started or reaped: stalled See the two rows above. Run the audit again. Credits for uncrawled pages are refunded automatically.
Audit Failed, reason starts with dispatch_failed SEOFix could not hand the audit to a crawler. Try again in a few minutes. The full reservation is refunded.
Audit Failed, reason starts with setup_failed The audit could not start. Check that the site is reachable from the public internet, then try again.
Audit Failed, reason internal_error An error inside the crawler. Try again. If it repeats, email [email protected] with the audit ID.
Audit Cancelled Someone clicked Cancel audit, or an agent called cancel_audit / DELETE /v1/crawls/{id}. Start a new one. Only pages already crawled are charged.

Status values and their meaning: Audit statuses.

Few or no pages crawled

Symptom Cause Fix
Many pages reported as BLOCKED_BY_FIREWALL A firewall or bot protection (Cloudflare, Akamai, DataDome, Sucuri) challenged the crawler. SEOFix backs off and stops crawling a section that keeps blocking it. Verify the site, then let SEOFixBot through: Connect Cloudflare, or add the firewall rule by hand and click Check my setup. See Blocked pages.
0 or 1 page, ROBOTS_BLOCKED notice Your robots.txt disallows the URL for SEOFixBot or *. SEOFix never fetches disallowed pages. Allow SEOFixBot in robots.txt for the paths you want audited.
Only the start page The start URL redirects to another host (for example a different domain). SEOFix follows redirects only within the site and keeps crawling the original host. Add the site with the final address, the one that answers 200.
Start page shows FETCH_FAILED The host did not answer: DNS does not resolve, the connection failed or timed out. Check the address and that the site is reachable from outside your network.
Pages found but no links followed Links are read only from 200 responses with Content-Type: text/html. A start URL that returns JSON, a PDF, or an HTML page with the wrong content type has no links to follow. Start from an HTML page and serve it as text/html.
Address refused with invalid_url Only public http/https addresses can be audited. Private and local addresses are refused. Use the public address of the site.
Audit stopped at 500 pages The site is not verified (500-page limit), or you are on the Free plan. Verify the site, and check your plan limits in Plans and credits.

Site verification

Run a check in the app from the site's page, Verify ownership. Agents: verify_site (MCP) or POST /v1/sites/{id}/verify. The exact values to publish: get_verification or GET /v1/sites/{id}/verification. A failed check answers 422 verification_failed.

Method Common reasons it fails
Search Console Search Console is not connected, or your Google account is not an owner or full user of a property that covers the site.
DNS TXT record The record is not on the registrable domain (for www.example.com, it goes on example.com), the value is not exactly seofix-verify=<your token>, or DNS has not propagated yet.
Meta tag The tag is not in the <head> of https://<your-host>/, the name is not seofix-verification, or the homepage is blocked or redirects elsewhere.
File https://<your-host>/.well-known/seofix-verify.txt must answer 200 directly (no redirects), as text/plain, at most 1 KB, containing exactly seofix-verify=<your token>.

SEOFix re-checks ownership every day. If the proof disappears, monitoring is paused and, when email alerts are on for the site, every team member gets an email. Verify again to resume. Full guide: Verify site ownership.

Search Console

Symptom Cause Fix
Settings → Integrations shows Access revoked or Needs reconnect; API answers 409 google_revoked Access was revoked in your Google account, or the connection was removed. Connect again with Continue with Google Search Console.
429 google_quota_exhausted Google's Search Console quota for the property is used up for today. Try again tomorrow.
429 budget_exhausted Your plan's daily URL inspections for the property are used: 300 on Free, 2,000 on Starter and Growth. Wait for the reset time in the response.

See Connect Google Search Console.

Rechecks ("Verify fix")

Error Status Cause Fix
site_not_verified 409 Rechecks need a verified site. Verify the site first.
insufficient_credits 402 A recheck costs 1 credit per URL, paid by the team owner. Top up credits; see Plans and credits.
recheck_rate_limited 429 At most 30 rechecks per hour per team. Wait for the Retry-After seconds.
cannot_verify 422 This issue type needs a full audit to confirm (for example link-graph or sitemap issues). Run a new audit.
invalid_urls 422 The URLs are not on the site's host, or there are more than 200. Send 1–200 URLs on the site.

See Verify a fix.

Home page preview

Error Cause Fix
"Too many previews from your network. Try again later." (preview_rate_limited) At most 3 previews per hour from one network. Wait, or sign up and use your free audit.
"This site was previewed recently. Try again later." (preview_rate_limited) One preview per site per hour. Wait, or sign up and use your free audit.
"Previews are busy right now. Try again in a minute." (preview_busy) Too many previews are running. Try again in a minute.
"Previews only run on the standard ports" The URL has a port other than 80 or 443. Remove the port, or sign up and add the site.

API and MCP errors

Status Code Cause Fix
401 unauthenticated Missing, wrong or revoked API key. Send Authorization: Bearer <key>. Create a new key in Settings → Agent & MCP, or run npx seofix connect.
403 team_access_revoked The key's holder is no longer a member of the key's team. Create a new key for a team you belong to.
403 not_team_owner Billing calls need the team owner's key. Use the owner's key, or have the owner buy in Settings.
403 plan_limit_sites, plan_limit_members, plan_limit_monitoring The team's plan does not allow it. Upgrade; see Plans and credits.
402 insufficient_credits Balance below the audit's page limit. Lower max_pages or top up.
409 site_not_verified Monitoring, rechecks or audits above 500 pages need a verified site. Verify the site.
429 rate_limited More than 60 requests per minute with one key. Wait for Retry-After, then retry.

Full list: Errors and rate limits. MCP setup: MCP server.

Email not arriving

Email Check
Verification email The link is valid for 24 hours. Resend from Settings → Profile → Resend email (3 times per 10 minutes). Check spam.
Team invitation The owner must have a verified email. If sending failed, the owner saw "The invitation email could not be sent" and no invitation was saved; invite again. Links expire after 7 days.
Monitoring alerts Sent only for sites with monitoring and email alerts on, for audits with new errors or a health drop of 5 points or more that finished in the last 3 days. Every team member receives them.
"Not enough credits" notice Sent at most once per site per 24 hours, when a scheduled audit is skipped and email alerts are on.

More in Troubleshooting

Still stuck? Email [email protected] with your site and what you expected to see.