# Record and Replay vs Spec Mocks

**Short answer:** Record-and-replay captures real traffic and plays it back, which is fast and limited to what happened; a spec mock is generated from the contract, so it covers the intended API including the edge cases that never occurred. The first is a recording; the second is a rendering.

## What recording captures

The real requests and responses, which makes it a quick way to seed a mock from observed behavior. It cannot cover the failures and states that never happened.

## What a spec mock covers

| Property | Recorded | Spec mock |
| --- | --- | --- |
| Source | Observed traffic | Contract |
| Edge cases | Only what happened | Declared responses |
| Intended API | Indirectly | Directly |
| On change | Re-record | On save |

## Why the edge cases matter

The bugs that hurt are in the 429, the empty list, and the malformed response that rarely happens. A spec mock includes them from the contract; a recording waits for them.

## The honest takeaway

Use recording to seed from real behavior and the spec mock for the full surface. They are a starting point and a complete rendering.

Return to the [Powerduck vs Mockoon comparison](https://www.powerduck.com/blog/powerduck-vs-mockoon/), or read the [API mocking guide](https://www.powerduck.com/blog/api-mocking-guide-hub/).

