# Equivalent Exposure Calculator

> Solves the shutter speed that keeps the exposure unchanged when the aperture and/or ISO are changed, using the reciprocity relation t2 = t1 × (N2/N1)² × (ISO1/ISO2), and reports the stop changes involved.

- Calculator id: `equivalent-exposure` · Category: Photography & Optics (`photography`) · Tool name: `calculate_equivalent_exposure`
- Canonical page: https://tttkmbb.com/photography/equivalent-exposure · This document: https://tttkmbb.com/photography/equivalent-exposure.md · JSON definition: https://tttkmbb.com/photography/equivalent-exposure.json

## Purpose

Solves the shutter speed that keeps the exposure unchanged when the aperture and/or ISO are changed, using the reciprocity relation t2 = t1 × (N2/N1)² × (ISO1/ISO2), and reports the stop changes involved.

**Use when:** You have a correctly exposed setting and want to open up or stop down the aperture, or change ISO, without changing the image brightness.

**Do not use when:** You only need the exposure value of one setting (use exposure-value), or the change comes from a neutral-density filter (use nd-filter-exposure).

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `aperture_f` | number |  | required | Current f-number, e.g. 8 for f/8. (min 0.5, max 128) |
| `shutter_seconds` | number | s | required | Exposure time in seconds. Enter fractions as decimals: 1/125 s = 0.008, 1/60 s = 0.016667, 1/1000 s = 0.001. (> 0, max 86400) |
| `iso` | number |  | optional, default 100 | ISO sensitivity setting (100, 200, 400, ...). (min 1, max 10000000) |
| `target_aperture_f` | number |  | optional | Optional new f-number; leave empty to keep the current aperture. (min 0.5, max 128) |
| `target_iso` | number |  | optional | Optional new ISO; leave empty to keep the current ISO. At least one of target_aperture_f / target_iso is required. (min 1, max 10000000) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `target_shutter_seconds` | number | s | Shutter speed that gives the same exposure with the target aperture and ISO. |
| `target_shutter_text` | string |  | The same value as a conventional fraction or seconds, e.g. '1/1000 s' or '2 s'. |
| `stops_from_aperture` | number | stops | 2·log2(aperture_f / target_aperture_f); positive means the new aperture admits more light. |
| `stops_from_iso` | number | stops | log2(target_iso / iso); positive means the new ISO is more sensitive. |
| `net_stops` | number | stops | Sum of both; the shutter becomes 2^net_stops times faster. |
| `ev` | number | EV | log2(aperture_f² / shutter_seconds). |
| `target_ev` | number | EV | log2(target_aperture_f² / target_shutter_seconds); differs from ev only by the ISO change. |
| `ev100` | number | EV | ISO-normalised exposure value, identical for both settings. |

## Formula

`target_shutter_seconds = shutter_seconds × (target_aperture_f / aperture_f)² × (iso / target_iso); net_stops = 2·log2(aperture_f / target_aperture_f) + log2(target_iso / iso)`

Assumes reciprocity (exposure depends only on the product of intensity and time), which holds for digital sensors; film shows reciprocity failure for exposures longer than about 1 s. Cameras round shutter speeds to the nearest 1/3 stop.

## Data Sources

- Wikipedia – Exposure value — https://en.wikipedia.org/wiki/Exposure_value (reference, retrieved 2026-09-24)
- Wikipedia – Exposure (photography) — https://en.wikipedia.org/wiki/Exposure_(photography) (reference, retrieved 2026-09-24)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/equivalent-exposure?aperture_f=…&shutter_seconds=…`
- `POST https://tttkmbb.com/api/v1/calculate/equivalent-exposure` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/equivalent-exposure · OpenAPI operationId `calculate_equivalent_exposure` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "equivalent-exposure", "inputs": {…}}`

## Example

- f/8, 1/250 s, ISO 100 → f/4: inputs `{"aperture_f":8,"shutter_seconds":0.004,"iso":100,"target_aperture_f":4}` → `{"target_shutter_seconds":0.001,"target_shutter_text":"1/1000 s","stops_from_aperture":2,"stops_from_iso":0,"net_stops":2}`
- f/8, 1/250 s, ISO 100 → ISO 400: inputs `{"aperture_f":8,"shutter_seconds":0.004,"iso":100,"target_iso":400}` → `{"target_shutter_seconds":0.001,"stops_from_iso":2,"net_stops":2,"ev":13.97,"target_ev":15.97}`

```
GET https://tttkmbb.com/api/v1/calculate/equivalent-exposure?aperture_f=8&shutter_seconds=0.004&iso=100&target_aperture_f=4
```

## Limitations

You only need the exposure value of one setting (use exposure-value), or the change comes from a neutral-density filter (use nd-filter-exposure). Assumes reciprocity (exposure depends only on the product of intensity and time), which holds for digital sensors; film shows reciprocity failure for exposures longer than about 1 s. Cameras round shutter speeds to the nearest 1/3 stop. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Why does a two-stop aperture change quadruple the shutter speed?**

Light admitted scales with the square of the f-number ratio: f/8 → f/4 is (8/4)² = 4× more light, so the shutter must be 4× shorter to compensate.

**Why does the target EV change when only ISO changes?**

EV counts only aperture and shutter, so the faster shutter raises it; the ISO-normalised EV100 stays the same, which is what 'equivalent exposure' means.

## Related

- [Exposure Value Calculator](https://tttkmbb.com/photography/exposure-value.md) — Exposure value and lighting description of a single setting.
- [ND Filter Exposure Calculator](https://tttkmbb.com/photography/nd-filter-exposure.md) — The same stop arithmetic for neutral-density filters.
