← All benchmarksSQL

SQLite WAL mode: 0.29 s vs 1.91 s for 3,000 commits

How much faster are SQLite writes in WAL mode?

3,000 single-row commits took 1.91 s in the default DELETE journal mode with synchronous=FULL, 0.83 s in WAL with FULL and 0.29 s in WAL with synchronous=NORMAL.

Results

DELETE + FULL1.91 s
WAL + FULL0.83 s
WAL + NORMAL0.29 s

How it was measured

3,000 inserts, one transaction each.

PRAGMA journal_mode = WAL;
PRAGMA synchronous = NORMAL;

Why

WAL appends to a log instead of rewriting pages.

When this does not apply

NORMAL can lose the last commits on power loss.

Environment

MacBook Air (Apple silicon, 8 cores), macOS. Measured 2026-10-12.

Source: shorts/demo-ticket/w2/wal.py in my content-engine repository. Treat any single run as a direction; re-run it on your hardware.

By Josué Barros, senior software engineer (full-stack, data and AI).