05Data scraping

Every bot you block comes back in minutes — as a brand-new device.

Industrial scraping no longer looks like one bot hammering your site. It's a fleet of real, genuinely different devices taking turns — each one a polite, normal visitor, together copying everything you publish.

Spot the symptoms

Does this sound like you?

If even a couple of these feel familiar, it’s probably already happening on your platform.

Bandwidth and infrastructure bills keep climbing, but real-user growth doesn't.

What it means: A large share of your traffic is serving someone else's business.

Your prices, listings or articles show up on competitor and aggregator sites within hours.

What it means: Someone is mirroring your catalog almost in real time.

You tighten rate limits — real users hit captchas and errors, yet the scraping never slows down.

What it means: Per-device throttles can't touch an operation spread across hundreds of devices.

Every device you block comes back as a fresh one — clean history, different fingerprint.

What it means: You're blocking devices; the operation just rotates in the next one.

Two or more ringing true? It’s worth five minutes to find out for sure.
Under the hood

How the attack actually works

No security background needed — here’s the whole play, start to finish.

01

The fleet

An operator assembles hundreds of real, different devices on residential connections. Each one is indistinguishable from a normal visitor.

02

The relay

The fleet crawls your site in turns. When anti-bot blocks one device, the next resumes exactly where it stopped — no progress lost.

03

The mirror

Your catalog reappears elsewhere — repriced, rebranded, monetized. And you paid to serve every page of it.

The costYou pay for the bandwidth, the infrastructure and the anti-bot tooling — and the operation still walks away with a full copy of your data.
The fix

How SignalGate stops it

One call on your critical path. The verdict comes back before anything happens.

Campaign-scale detection

Where per-device tools see hundreds of unrelated visitors, SignalGate's behavioral models see one coordinated operation — the relay itself, not the individual device.

Measure before you block

Start with fire-and-forget logging and watch the dashboard separate genuine readers from the fleet — no user impact while you decide.

Block before the page is served

Once you're ready, a sub-3 ms verdict fires before the content leaves your servers — the whole operation goes dark at once, and real users never notice.

allow for the real userblock for the attackin under 3 ms
In one sentence

Fingerprinting catches one device pretending to be many. SignalGate catches the opposite — many genuinely different devices working as one operation — the fraud that device fingerprinting alone was never built to see.

Integrate it

Wire it in, in minutes

Start with two fire-and-forget calls to /v0/log — log the action and the target action. No blocking, no user impact, nothing on your critical path.

Log content requests and real-user actions

from datetime import datetime, timezone
from signalgate import Client, Event, EncryptedPayload

client = Client(api_key="pk_live_...")

def sg_event(body: dict, method: str) -> Event:
    # Each request carries its OWN "signalgate" envelope from the browser SDK
    return Event(
        user_id=body["user_id"],
        ip=request.headers.get("X-Forwarded-For", request.remote_addr),
        method=method,
        timestamp=datetime.now(timezone.utc).isoformat(),
        payload=EncryptedPayload(**body["signalgate"]),
    )

@app.post("/api/content/view")
def view_content():
    body = request.get_json()
    # ...serve the article / listing / profile...
    client.log(sg_event(body, method="content.request"))  # AFTER the content is served
    return {"ok": True}

@app.post("/api/actions")
def user_action():
    body = request.get_json()
    # ...a real-user action scrapers never take (save, share, purchase)...
    client.log(sg_event(body, method="user.action"))      # its own fresh envelope
    return {"ok": True}

Within days the dashboard shows how much of your traffic is one coordinated operation — before you turn on blocking.

SignalGate

Stop fraud before it reaches your backend.

Free for everyone through 2026. Two lines of code. No demo required.