N8n Data Disappeared even After Rollback! Help!

Hey everyone! I’m encountering a critical and baffling issue where all data in my self-hosted n8n instance has completely vanished, and rolling back the machine hasn’t fixed it.


The entire n8n database data disappeared. Absolutely nothing is left (workflows, credentials, executions, etc.).

We run n8n in a Docker container on a Linux Ubuntu machine, using an external Postgres database (on the same machine).

Here’s what we tried and the bizarre result:

  1. We noticed the data loss.

  2. We rolled the entire machine back to a point a few weeks ago when n8n was definitely working fine. The data was STILL missing.

  3. We rolled back the entire machine further, to a point about a month ago.

  4. After this deeper rollback, the n8n data reappeared for a few minutes, and then disappeared again spontaneously, even though no changes were made on our end.

  5. We checked the underlying Postgres database directly, and it showed the same behavior: data present for a few minutes, then gone.

We’ve tried everything we can think of, and the data simply will not persist or come back. It’s like something is actively wiping it shortly after the machine starts up or connects to the database.


There are no visible n8n error messages; the application simply appears empty, like a fresh install, even after rollbacks that should have restored the data. We’re checking the Postgres logs now but haven’t found a smoking gun yet.


Information on your n8n setup

  • n8n version: latest

  • Database (default: SQLite): postgres

  • n8n EXECUTIONS_PROCESS setting (default: own, main): Default

  • Running n8n via (Docker, npm, n8n cloud, desktop app): Docker self hosted

  • Operating system: linux ubuntu


What could possibly be causing the data to reappear briefly and then immediately vanish again, even after a full machine rollback? Any insights into processes, containers, or database cleanup scripts that might be running and wiping the data would be massively appreciated. :folded_hands:

Checking Postgres logs for DROP/TRUNCATE statements or connections from unexpected clients … or the way is mapping path :thinking:.

Your .n8n folder contains the db file log?

It just happened to us as well, however case we lost 7 days worth of data.

Here’s the timeline:

  1. 7:20am: Logged into n8n instance. The data was there.
  2. 7:25am: SSH’ed into n8n server:
    1. Ran apt install plocate
    2. Modified docker-compose.yml and added N8N_DATA_TABLES_MAX_SIZE_BYTES=1073741824
    3. docker compose down
    4. docker compose up -d
  3. Refreshed n8n browser window > the last execution date was Nov 7th (“today” was Nov 14th).
    1. Data Table size dropped from 45mb to 17mb.
    2. Checked SQLite database, the last execution date was Nov 7th.

That’s why I prefer Postgres :relieved_face:.

Never had any issue , and I hope :folded_hands: it stays like this.