Fix Screpy crawl and website analysis problems
Troubleshoot firewall errors, robots.txt blocks, rate limits, timeouts, failed crawls, and websites where Screpy finds only one or a few pages.
Use this guide when a Screpy analysis fails, remains incomplete, reports a firewall or robots.txt problem, or crawls fewer pages than expected. Start with the symptom you can observe and change one cause at a time.
Do not repeatedly restart a blocked crawl
First allow 5.75.247.29, verify the public robots.txt file, and inspect security logs. A new crawl uses your current access and project settings; it cannot repair a block by itself.
Quick crawl diagnosis
Confirm the website is publicly reachable
Open the exact project URL in a private browser window. Resolve login screens, maintenance mode, redirect loops, DNS failures, TLS errors, and general timeouts first.
Confirm crawler access
Allow 5.75.247.29 and ScrepyBot through every security layer. Follow Allow the Screpy crawler.
Confirm robots.txt access
Open /robots.txt and make sure ScrepyBot and expected sections are allowed. Follow Configure robots.txt for Screpy.
Check the latest crawl status
Wait for the current analysis to complete or fail. Do not interpret page, link, or image totals from a crawl that is still running.
Compare scope with the missing pages
Check maximum URLs, depth, internal links, redirects, JavaScript navigation, and disallowed paths. Increase scope only after access is confirmed.
The analysis does not start
Check these causes in order:
- Another crawl is already queued or running.
- A successful manual analysis started within the last 10 minutes.
- Website Audit is unavailable for the current plan or disabled in project settings.
- Project setup did not finish or the project limit was reached.
- The website cannot be reached from the public internet.
Wait for a running analysis to finish. If Screpy shows a remaining retry time, wait for that window rather than submitting repeatedly. Then confirm Project settings and start one new analysis.
Screpy reports a firewall or access error
An access warning means the crawler did not receive a usable website response. It does not prove that one specific product is responsible.
- Allow
5.75.247.29in the CDN/WAF, host firewall, server firewall, and security plugins. - Skip CAPTCHA, managed bot checks, browser challenges, and rate limits for that IP.
- Check country, ASN, data-center, user-agent, and referrer rules.
- Search security events first, then origin access logs.
- Confirm the response body contains the real page, not only a successful status code.
Use the complete firewall and crawler allowlist instructions.
robots.txt blocked the analysis
Open the public /robots.txt file and look for rules that block ScrepyBot, /, or the affected section. Add the following group, publish it, clear relevant caches, and verify the public file:
User-agent: ScrepyBot
Allow: /Then run a new analysis. See the robots.txt troubleshooting guide for overlapping rules and platform caches.
The crawl finds only one page or too few pages
When the homepage works but expected pages are missing, use this order:
- Check the completed total: make sure the crawl is not still running.
- Check access across the site: category or application paths may have different firewall or robots rules.
- Check internal links: important pages must be reachable through normal crawlable links.
- Check maximum URLs: the crawl stops adding pages when it reaches the selected capacity.
- Check depth: deeply nested pages may sit beyond the configured link depth.
- Check redirects and canonical hosts: links may send the crawler outside the project host or into a loop.
- Check JavaScript navigation: enable JavaScript rendering only if links or content do not exist in the initial HTML.
- Check page responses: a security tool may return empty or challenged HTML after the homepage.
A large website does not guarantee a large crawl
Screpy can analyze only URLs it can discover, access, and fit inside the selected scope. Compare a missing page's path from the homepage with the crawl depth, internal links, robots rules, and response status.
The crawl stops partway through
A crawl can stop before the expected total because it reached its URL capacity, exhausted discoverable links, encountered repeated blocks or timeouts, or was rate-limited.
- Compare the completed page count with Max URLs.
- Review whether the missing section is linked from crawled pages.
- Look for bursts of
403,429, or5xxresponses in server logs. - Reduce concurrency and add a delay if the server limits request volume.
- Resolve slow origin responses before increasing the scope.
- Start a new analysis after changing access or crawler settings.
The website rate-limits Screpy
Rate limiting usually appears as HTTP 429, temporary access blocks, or a crawl that slows and stops after a burst of requests.
The preferred fix is to exclude 5.75.247.29 from rate-limit rules. If that is not possible:
- Open the project's Crawler settings.
- Reduce Concurrency so fewer requests run at once.
- Add a Delay between requests.
- Save the settings.
- Run one new analysis and monitor server logs.
Lower settings make a crawl take longer but reduce pressure on the website. See crawler settings explained.
HTTP errors and timeouts
| Result | Likely meaning | First action |
|---|---|---|
401 Unauthorized | Authentication is required. | Make the intended pages publicly accessible. |
403 Forbidden | A firewall, WAF, host, or application rejected the request. | Allow the crawler IP and inspect security events. |
429 Too Many Requests | A rate limit rejected request volume. | Exclude the IP or reduce concurrency and add delay. |
500 Internal Server Error | The website failed while handling the request. | Check application and server error logs. |
502 / 503 / 504 | The proxy or origin was unavailable or too slow. | Check origin health, capacity, and upstream timeouts. |
| Connection timeout | The crawler could not establish or finish the request in time. | Check DNS, firewall drops, origin response time, and network reachability. |
200 OK with no SEO data | The body may be empty, challenged, or script-only. | Compare the actual HTML served to the crawler with the normal page. |
Results look wrong even though the crawl completed
Before treating a finding as incorrect:
- Select the latest completed crawl.
- Open the exact URL reported by Screpy.
- Check whether the issue existed in the HTML received during that crawl.
- Remember that a browser may show personalized, cached, or JavaScript-rendered content.
- Run a new crawl after changing the website; historical snapshots do not update.
- For broken external links, remember that the destination can block automated requests or rate-limit checks while still opening in your browser.
Questions about failed and incomplete crawls
Browsers can have trusted cookies, complete challenges, run JavaScript, and connect from a different country or network. Screpy must receive the real page directly from its crawler IP without a login, challenge, or automated-traffic block.
Confirm that the selected crawl completed successfully and found pages. An empty report can follow a blocked crawl, an incomplete crawl, a one-page crawl with no matching records, or selection of the wrong crawl snapshot.
No. Increase them only when access works and the missing URLs are beyond the current capacity or link depth. Higher limits do not fix robots, firewall, rate-limit, navigation, or response-content problems.
A completed crawl is an immutable snapshot of the website and settings at that time. Save the new settings and start another analysis to create a new snapshot.
Send the project URL, approximate analysis time, selected crawl status, expected and actual page counts, one example missing URL, relevant HTTP status codes, and redacted firewall or server-log events for 5.75.247.29. Never send passwords or private keys.
Once the crawl completes with the expected coverage, continue to Crawling your website to interpret the crawl and Quick Wins to prioritize fixes.