---
"@type": WebPage
"@id": "https://helloloam.dev/solutions/mistakes-are-allowed"
"@source": "https://helloloam.dev/data/webpage/mistakes-are-allowed.json"
"@stamp": "2026-10-22T21:53:55+00:00"
about:  # 3
  - "@type": DefinedTerm
    "@id": "https://helloloam.dev/data/definedterm/draft-and-live-lifecycle.json"
    name: Draft and live lifecycle
    identifier: draft-and-live-lifecycle
    inDefinedTermSet:
      "@type": DefinedTermSet
      "@id": "https://helloloam.dev/data/definedtermset/mechanics.json"
      name: Mechanics
      identifier: mechanics
  - "@type": DefinedTerm
    "@id": "https://helloloam.dev/data/definedterm/backups-as-a-snapshot.json"
    name: Backups as a snapshot
    identifier: backups-as-a-snapshot
    inDefinedTermSet:
      "@type": DefinedTermSet
      "@id": "https://helloloam.dev/data/definedtermset/mechanics.json"
      name: Mechanics
      identifier: mechanics
  - "@type": DefinedTerm
    "@id": "https://helloloam.dev/data/definedterm/security-bolted-in.json"
    name: Security bolted in
    identifier: security-bolted-in
    inDefinedTermSet:
      "@type": DefinedTermSet
      "@id": "https://helloloam.dev/data/definedtermset/basics.json"
      name: Basics
      identifier: basics
description: Every change is a draft first, with a preview of the whole site. Every earlier version is kept — going back is one sentence.
headline: Mistakes are allowed
identifier: mistakes-are-allowed
image:
  "@type": ImageObject
  contentUrl: /assets/images/mistakes-are-allowed.jpg
  caption: A woman at a café table, smiling as she types on her laptop.
inLanguage: en
name: Mistakes are allowed
url: "https://helloloam.dev/solutions/mistakes-are-allowed"
---

# Mistakes are allowed

## The worry

Changing a website can feel like working without a net. One wrong click and it is live; one wrong delete and it is gone. So people don't touch it — or wait for someone who dares.

## What happens instead

On a loam site [every change is a draft first](/principles/draft-and-live-lifecycle). You get a link that shows the whole site as it would be — the new page in the real menu, with the real images — and you can pass that link on. It goes live when you say so; drop it, and the live site was never touched.

## A check before anything goes live

Before a change goes live, the site checks itself as it would be: every link must lead somewhere, every required field must be filled, the design must still work. A change that would break the site does not go live, and you are told why.

## Going back

Every fifteen minutes the site saves itself to [its own private history](/principles/backups-as-a-snapshot) — nobody has to remember. “Put the prices back to how they were before Tuesday” brings the older version back as a new draft, which you look at and publish like any change.

## What it costs

Drafts that were never published are not in the history until they are; and the history itself must stay private. Mistakes are not impossible — they just become something you can undo.
