---
title: "Passthrough Mode - Serpwise Documentation"
description: "Temporarily serve your original pages without SEO rule modifications while keeping security features active."
url: "https://serpwise.ai/docs/passthrough/"
source: "https://serpwise.ai/docs/passthrough/"
---
[Back to Serpwise](/)

Serpwise Documentation

Connect · Configure · Execute

Search documentation

`/`

No documentation found.

↑↓ Navigate Enter to open

Browse documentation

**Passthrough Mode** lets you temporarily disable all HTML modifications on a domain while keeping security features active. When enabled, the gateway serves your original unmodified pages - no SEO rules are evaluated, no HTML is changed - but Shield, rate limiting, security headers, and redirects continue to protect your site.

Passthrough is configured per-domain from the **Passthrough** tab in your domain dashboard.

## When to Use Passthrough

Passthrough is designed for situations where you need to quickly stop all modifications without tearing down your proxy setup:

- **Debugging** - You suspect a rule is causing issues and want to confirm by serving unmodified pages
- **Deployments** - You’re deploying origin changes and want to temporarily bypass rule evaluation
- **Incident response** - Something looks wrong and you want to immediately revert to serving original content
- **Testing** - You want to compare modified vs. unmodified pages side-by-side

## What Gets Skipped

When passthrough is enabled, the following are **skipped**:

| Feature                      | Behavior                                                                      |
|------------------------------|-------------------------------------------------------------------------------|
| **SEO rules**                | Not evaluated - no meta tags, canonicals, structured data, or HTML injections |
| **Robots.txt modifications** | Skipped - original robots.txt served as-is                                    |
| **Markdown serving**         | Skipped - original HTML served instead of markdown conversion                 |

## What Stays Active

Security features continue to run because passthrough means “stop modifying my HTML”, not “turn off the proxy”:

| Feature              | Behavior                                           |
|----------------------|----------------------------------------------------|
| **Exploit Shield**   | Still blocks requests to exploit paths             |
| **IP Blackhole**     | Still auto-bans IPs that trigger exploit detection |
| **Rate Limiting**    | Still enforces per-IP request limits               |
| **Security Headers** | Still injected on every response                   |
| **Redirects**        | Still evaluated and applied                        |

## Enabling Passthrough

1. Navigate to your domain in the dashboard
2. Click the **Passthrough** tab in the sidebar
3. Toggle **Enable Passthrough Mode** on
4. Click **Save Passthrough Settings**

Changes take effect on the next request - no deployment or cache clear required.

## Detecting Passthrough

When passthrough is active, the gateway adds a response header to help you verify:

```
X-Serpwise-Passthrough: manual
```

You can check for this header using curl:

```
curl -sI https://your-domain.com/ | grep X-Serpwise-Passthrough
```

If the header is present, passthrough is active and no modifications are being applied.

## Automatic Passthrough (Circuit Breaker)

In addition to the manual toggle, the gateway has a built-in **circuit breaker** that automatically enters passthrough mode if the modification pipeline encounters repeated errors on a domain.

| Parameter           | Value      |
|---------------------|------------|
| **Error threshold** | 5 errors   |
| **Error window**    | 60 seconds |
| **Cooldown**        | 5 minutes  |

If 5 modification errors occur within 60 seconds, the circuit breaker trips and the domain enters automatic passthrough. After a 5-minute cooldown, the gateway probes with a single request - if it succeeds, normal modification resumes; if it fails, passthrough continues for another cooldown period.

When the circuit breaker is active, the response header reads:

```
X-Serpwise-Passthrough: circuit-breaker
```

## Passthrough Reasons

The `X-Serpwise-Passthrough` header indicates why passthrough is active:

| Value             | Meaning                                                                            |
|-------------------|------------------------------------------------------------------------------------|
| `manual`          | You enabled passthrough from the dashboard                                         |
| `circuit-breaker` | The automatic circuit breaker tripped due to repeated errors                       |
| `panic-recovery`  | The modification pipeline encountered an unexpected error on this specific request |

## Limitations

- **All-or-nothing** - Passthrough disables all modifications on the domain. There is no per-rule or per-path passthrough. To disable specific rules, toggle them off individually.
- **Circuit breaker is not configurable** - The error threshold (5), window (60s), and cooldown (5m) are fixed. Per-domain configuration is planned for a future release.
- **Circuit breaker state is in-memory** - It resets on gateway restart and is not shared across gateway instances.
- **No alerting** - There is currently no notification when the circuit breaker trips. Check the `X-Serpwise-Passthrough` header or Prometheus metrics to detect automatic passthrough.