Proxy tier benchmark › Targets
Why does the Indiana business search return an empty response?
State business entity registries · minimum viable tier: no tier sufficient · measured 2026-08-18
Because it is refusing without saying so. Every one of the 60 requests — unproxied, datacenter, anti-detect and residential alike — returned HTTP 202 Accepted with a zero-length body, in a median of 129 ms unproxied. All six arms scored 0%, and no tier changed a single request. Measured 2026-08-18.
What was measured
| URL | https://bsd.sos.in.gov/publicbusinesssearch |
| Content assertion | Business Search — never verified against a live page |
| Arms | 6 |
| Rounds per arm | 10 |
| Requests | 60 |
| Measured | 2026-08-18, 15:38–18:09 UTC |
| Benchmark host | DigitalOcean droplet, New York (nyc3) |
A request counts as a success only if the expected content is present. An HTTP 200 carrying a challenge page, an empty body or the wrong page is a failure, because it is not a page you can use.
This measures whether a tier works, not long-run stability under sustained load. Ten requests per arm, at a two-second floor, never approach a per-IP rate limit — which is the thing a rotating pool exists to defeat.
Results by arm
| Arm | Success | p50 | p95 | Bytes per success | Outcomes |
|---|---|---|---|---|---|
| direct (no proxy) | 0% | 129 ms | 205 ms | n/a | soft block 10 |
| datacenter, one pinned exit | 0% | 595 ms | 1,807 ms | n/a | soft block 10 |
| datacenter, rotating exit | 0% | 576 ms | 1,672 ms | n/a | soft block 10 |
| anti-detect, one pinned exit | 0% | 734 ms | 1,801 ms | n/a | soft block 10 |
| anti-detect, rotating exit | 0% | 371 ms | 1,799 ms | n/a | soft block 10 |
| residential, rotating exit | 0% | 1,435 ms | 2,783 ms | n/a | soft block 10 |
What protects this target
An HTTP 202 with nothing in it, applied uniformly.
This is one of four targets in the study where all 60 requests produced an identical outcome, and the only one of the four answered with a success status and no body at all. Nothing is refused, nothing is challenged and nothing is served. There is no status code to branch on, no error to catch, and no body to parse.
The consequence for anyone building against this target is direct: a scraper that treats any 2xx as success will record a clean run and write empty rows, and a monitoring dashboard built on status codes will show 100% availability while collecting nothing. The harness classifies an empty 2xx body as a soft block for exactly this reason, and does so before the content assertion runs.
North Carolina's Real Estate Commission uses the same technique on the same
kind of endpoint; both were flagged by the reconnaissance probe as http_202
with zero bytes, weeks of scraper debugging apart.
robots.txt status
The URL measured is allowed by the host's robots.txt.
| Status | allowed |
| File | https://bsd.sos.in.gov/robots.txt |
| Crawl-delay | not declared |
| Fetched as | the benchmark's own User-Agent |
| Note | robots.txt 0 bytes via benchmark_ua |
Limits of this result
- The content assertion was never verified against a live page. It does not affect the result: an empty body is classified before the assertion runs, so no wrong assertion could produce this outcome.
- The search page was measured, not a submitted query.
- Ten rounds per arm in a single three-hour window on 2026-08-18. Anti-bot behaviour drifts; a result older than a few months is a historical record, not a current one.
- One exit geography. Every request left from a US datacenter host or a US exit, so nothing here describes how this target answers traffic from elsewhere.
- The unproxied arm ran from a clean, previously unused cloud IP with no accumulated reputation. It is a best case a production scraper will not sustain.
Related
- Public records scraping
- Do you need residential proxies for the Arkansas business entity search?
- Does the Colorado business entity search block datacenter proxies?
- Is the Iowa Secretary of State business search blocked by Cloudflare?
- Proxy tier benchmark: full report
Run date: 2026-08-18 · Full benchmark report · Harness and raw data · All 32 targets
The 60 rows behind this page are in results/six-arm/raw.csv; filter them with grep '^[^,]*,us_in_bsd_search,' raw.csv.
Test your own target
The result above describes one URL on one day. Paste your own URL into the live tester and see the real response before creating an account.