Comparison

CloakScan vs curl

Both get used after “I think Google sees something else.” They are not the same test. curl shows raw HTTP for the User-Agent you send. CloakScan compares a rendered visitor page with a crawler page, then keeps the evidence.

No plugin · No server access · Not a curl replacement

What it answers

Manual curl
What does this URL return right now with this User-Agent?
CloakScan
Do visitor and Googlebot views differ, and did that change?

Visitor vs Googlebot crawl

Manual curl
You run two commands yourself and diff the output.
CloakScan
Every scan compares a real browser with a Googlebot identity.

JavaScript rendering

Manual curl
No. curl returns raw HTML. Injected or delayed spam never appears.
CloakScan
Yes. Both views are rendered before the comparison.

IP and ASN identity

Manual curl
Your laptop or VPS. A spoofed Googlebot string is still you.
CloakScan
Crawler identity, not a User-Agent swap from an office IP.

Screenshots

Manual curl
No. You get headers and a body in the terminal.
CloakScan
Yes. Dated visitor and crawler screenshots on every scan.

Continuous cloaking watch

Manual curl
One shot. Tomorrow you run it again, or you don’t.
CloakScan
Yes. 6h, 24h, or 7-day cadence, with email and in-app alerts.

Google index spam

Manual curl
You run a site: search yourself.
CloakScan
Yes. Index inspection for pharma, casino, adult, and crypto URLs.

Client-ready evidence

Manual curl
A terminal dump. Fine for you, weak in a client email.
CloakScan
Dated score, dual screenshots, verdict, and monthly PDF.

“curl” here means the usual check: two requests, one with a browser User-Agent and one with a Googlebot string, then a manual diff. That is a valid first look. It is not a dual-crawl monitor.

Pick the right tool

Use curl for the bytes. Use CloakScan for the two pages.

Choose curl when

You need a raw HTTP answer now

  • One URL, and you want status, headers, or the redirect chain.
  • You are debugging a rewrite, a UA rule, or a cache variant.
  • The report is for you, not for a client inbox.

Choose CloakScan when

You need the crawler view, kept

  • Cloaking that keys off IP, ASN, or a rendered payload.
  • More than a handful of sites, and you cannot re-run curl daily.
  • You need a dated visitor-versus-crawler report you can send.

Why the terminal result misleads

A fake Googlebot string is still your IP

This is the check most people run first:

curl -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" \
  -L https://yoursite.com

It is a fair first look at User-Agent cloaking. It is not a Google crawl. The request still comes from your laptop or a datacenter. If the gate is IP, ASN, or reverse DNS, you get the visitor page and call the site clean. JavaScript-injected spam never shows up at all.

CloakScan sends both identities, renders both, and keeps the screenshots. If curl already looked clean, run a dual crawl and an index check. The leftover is often in Google’s index, not in the HTML curl printed.

Longer version: why faking a Googlebot User-Agent is not a real test.

Before you pick

Common questions

Does CloakScan replace curl?

No. curl is still the right tool for a raw header, status, or redirect check. CloakScan is a dual-crawl monitor. Use curl when you want the bytes. Use CloakScan when you need a rendered visitor-versus-crawler comparison you can keep and send.

Changing the User-Agent only tests one gate. Mature cloaking also checks IP, ASN, and reverse DNS. A Googlebot string from a laptop or a cloud VPS still looks like a scanner, so the clean crawler page never appears. curl also does not execute JavaScript.

Yes. If CloakScan flags a mismatch, curl is useful for confirming a redirect chain or a status split on that exact URL. Treat it as a follow-up, not as the whole investigation.

The report is built for evidence: rendered views, screenshots, redirects, status, and structured data. It is not a packet dump. If you need the raw bytes, curl is still the tool.

See both pages

curl showed the headers. CloakScan shows what Google still sees.

Paste a URL, or start a trial and watch the next change. No plugin, no server access.