Note content silently overwritten by another note – iCloud vault, no remote sync

Platform: macOS
macOS Version: Sequoia 15.3.1 (the issue occurred 24 February 2025—possibly an earlier OS version)
Obsidian Version: 1.8.9 (Installer 1.5.12)
Note: It’s possible Obsidian updated since the issue occurred—this report reflects the current version.

Sync / Vault Setup:

  • Vault is stored in iCloud Drive, with the folder always kept available locally.
  • I don’t use Obsidian Sync anymore—I had a subscription around August/September 2024 but did not renew it.
  • The current vault shows the “Uninitialized” icon at the bottom right, and no remote vault is active.
  • No Git or third-party sync tools were in use at the time.
  • I use the free version of Obsidian.

Description of the Bug:
On March 23rd 2025, I discovered that the contents of one note had been entirely replaced with the contents of another unrelated note. The note name and path remained the same, but when I opened the file, the content belonged to a completely different note.

It seemed like Obsidian had duplicated the contents of Note B into Note A, overwriting Note A’s original content. This happened silently, with no warning, dialog, or visible conflict. I only noticed when reviewing my notes and realizing the headline didn’t match the body content.

I was eventually able to recover the original content using iCloud’s version history, which showed that the overwrite occurred on February 24th at 00:11. There were multiple saved versions within that same minute—some containing the original content, and from one point, the note had already been overwritten, as if the entire body of text had been instantly replaced without any gradual edits.

Timeline / Trigger Info:

  • I wasn’t editing both notes at the same time.
  • I work from a single device only, and I was not switching devices or doing anything unusual.
  • I don’t remember doing any copy-paste or refactoring that could have caused this.
  • The notes did not share a similar filename or internal link.
  • This has happened twice in the past six months.

Why This Matters:
Because Obsidian works directly with the file system, this kind of silent overwrite can cause data loss that’s hard to notice until it’s too late—especially in large vaults where you don’t frequently re-open every note.

What Would Help:

  • Clarification on whether this is a known issue with iCloud sync + Obsidian’s file system handling.
  • Any suggestions for preventing this in non-Sync setups.
  • Potential ways to log or detect overwritten content silently replaced by external sync tools.

Let me know if I can provide logs or other info—I’d love to help resolve this.
Thanks so much for building such an incredible tool. I genuinely love working in Obsidian and want to make sure others don’t experience the same kind of silent overwrite without warning.

PS: I understand this may be difficult to reproduce in a sandbox vault, as it happened in a live working vault with iCloud sync. However, I’m reporting it because this is the second time I’ve had a note overwritten with another note’s content silently and without warning. The first time it happened, I searched the forum, and found that keeping the iCloud folder locally downloaded and always available would solve the problem. It did not. I believe this may be a critical sync-related issue and could result in hard-to-detect data loss for other users as well.

PPS: For anyone struggling with the same kind of data loss and can’t find the iCloud version history to recover it:

  • Go to your iCloud Drive folder.
  • Navigate to your Obsidian vault folder.
  • Find the note file that was overwritten — it will end in .md
  • Right-click on the .md file.
  • Select “Revert To” > “Browse All Versions…”
    NB: If you don’t see this option, like I didn’t, try opening the file first in a text editor like TextEdit (I just double-clicked on the file and it opened in TextEdit) or VS Code, then click “File > Revert To” from the top menu.
    This will open a version history interface, similar to Time Machine.

———

Debug:

SYSTEM INFO:
Obsidian version: v1.8.9
Installer version: v1.5.12
Operating system: Darwin Kernel Version 24.3.0: Thu Jan 2 20:22:00 PST 2025; root:xnu-11215.81.4~3/RELEASE_X86_64 24.3.0
Login status: logged in
Language: en
Catalyst license: none
Insider build toggle: off
Live preview: on
Base theme: adapt to system
Community theme: none
Snippets enabled: 0
Restricted mode: on

RECOMMENDATIONS:
none


1 Like

I have had the same issue several hundred times, but I think the problem is down to iCloud rather than Obsidian. It has always occurred after I have done search-and-replace runs across my vault using VS Code. I think iCloud can’t keep up with the speed of the changes.

Things have improved with the recent-ish iCloud change allowing users to mark files and folders as ‘Keep Downloaded’, but I have had about thirty such broken files in the last week.

I make hourly and then daily backups of my vault and restore broken files from those backups—with the oldest being about a year old.

I wonder if this happens with Obsidian’s own sync service.

I think your installer is out of date. It can be updated using a full download:

Download - Obsidian

1 Like

Hello, thanks for the report.

I am not sure this has anything to do with iCloud. Generally, the problem of iCloud not configured to keep the files locals manifests as the files appearing missing or empty. Not that the content of one note is replaced with the content of another note.

One question that I have for you is: Do you use third party plugins?

1 Like

Hello!

Thanks so much for looking into this :blush:

To answer your question—no, I’m not using any third-party plugins. I’d consider myself a very vanilla user: just working with folders and individual notes. I don’t use tags, internal links, or fancy setups—just plain text to build and organize a comprehensive worldbuilding archive for a book series I’m writing.

Because I rely heavily on these notes to keep track of canon (and can’t possibly remember everything hehe), losing or overwriting one can be pretty devastating.

Note:
To avoid future issues, should it really be an issue with iCloud sync, I’ve now set up an Automator app that zips and backs up the vault to iCloud daily. Each backup is saved as a separate, dated copy—so nothing gets overwritten, and I can always restore from a previous version if needed. This way, I keep the vault stored locally and avoid working directly out of iCloud.
It’s a bit of a messy workaround—the Automator app is triggered by a recurring Calendar event, but to avoid seeing “Obsidian Backup” staring at me every single day, I tucked it into a separate calendar, keeping my main view clean and relevant.
Of course, if it turns out iCloud sync wasn’t the culprit after all, then this workaround might backfire—restoring would be significantly harder without version history. I’d likely have to dig through each zipped backup manually just to find the right version of a single note.

1 Like

Ok, did you look what was the state of that file within the file recovery plugin?

If having extra data helps …

Hello.

Dataview is the one consistent plugin I have used over the years, and it was the only plugin I had installed when I first saw the problem.

I wondered if the issue was down to Obsidian (with Dataview installed), VS Code, or iCloud, but I have copied my vault to a local folder and run thousands of changes using VS Code and not had any corrupted files. Ergo, I had concluded that the problem was with iCloud.

Conversely, I have never seen an empty file or had a file go missing. I have only had iCloud-stored files that have had the wrong data in them, and only after completing large search-and-replace runs using VS Code . :person_shrugging:

1 Like

I did check the File Recovery plugin, but unfortunately, I had it set to retain only 7 days of data (the default setting, if I’m not mistaken). Since the overwrite had happened about a month earlier, there was nothing available by the time I looked. That’s on me for not adjusting the retention period sooner—I’ve now increased it to 90 days and will hopefully catch anything suspicious in time if it happens again.

1 Like