# Revert to a previous revision

**Revert**, on the **Updates** tab, swings the route back to a prior revision. Mechanically it is a cutover to that revision: kixctl starts it if it was stopped, waits for its address, and re-points the route.

The prior revision is a whole, intact instance. It was retired when it was superseded but kept in place — it is removed only when you reap it, and only after the reap window. Reverting does not rebuild anything and runs no migration in reverse.

The app's data is untouched by a revert, because the data never lived in the revision. State lives outside the immutable image; every revision, including the one you revert to, is injected with the same pointer to that external state. See [Rollback and the state boundary](../concepts/rollback-and-state.md) for the model and [Inject per-app configuration and secrets](./injected-config.md) for how that pointer is delivered.

Revert runs on the queue with a live toast, the same as a cutover.
