---
title: Surrogate-Control
summary: null
url: >-
  https://www.fastly.com/documentation/reference/http/http-headers/Surrogate-Control
---

Fastly processes `Surrogate-Control` in a similar way to `Cache-Control` in order to [determine the initial TTL](https://www.fastly.com/documentation/guides/concepts/edge-state/cache/cache-freshness/) (freshness) of a resource, but will prefer `Surrogate-Control` over `Cache-Control` if both exist.

> **HINT:** If you are using [service chaining](https://www.fastly.com/documentation/guides/getting-started/services/service-chaining/), the `Surrogate-Control` header is passed to all services in the chain. If, for example, you do not want the "first" service (the service receiving public traffic) caching responses, you must unset or overwrite `Surrogate-Control`.

## Example

```http
Cache-Control: max-age=0
Surrogate-Control: max-age=86400, stale-while-revalidate=60
```
