Operating system
Windows
Joplin version
3.5.13
Desktop version info
Joplin 3.5.13 (prod, win32)
Device: win32, 12th Gen Intel(R) Core(TM) i7-1255U
Client ID: 077c70bb748b46ebbde1d2eb10882b50
Sync Version: 3
Profile Version: 49
Keychain Supported: Yes
Alternative instance ID: -
Revision: 0c1511f
Backup: 1.5.1
Combine notes: 1.2.2
Csv Import: 1.0.1
Email Note: 1.2.2
Ez Table: 1.0.2
Freehand Drawing: 4.2.0
Hotfolder: 1.2.1
Hotstrings & Hotkeys: 1.0.0
Insert Date: 1.0.1
Joplin Note Attachement rename: 1.2.2
JSheets: 1.1.3
OCR: 0.3.2
Persistent Editor Layout: 2.2.0
Quick Move: 1.1.0
Sync target
Joplin Cloud
What issue do you have?
None of my devices seem to be syncing. They are all connected to Joplin Cloud, but don't appear to update. I scanned several items to the Joplin Cloud email address, but nothing updated. I have 3 Windows PCs, that don't seem to update with each other. The same is true for my Android phone. All of the apps go through the motions of syncing. They just don't.
Nothing has changed on my end. I don't know what to do next.
Note: I've sent a direct message asking for logs.
Still no success syncing. I have tried using Webdav with Koofr, I am currently trying syncing to my NAS via lan. Koofr sync is so slow, I'm not quite sure when it will finish after more than a day.
I tried to sync to my NAS via lan and it was lightning fast! I first created a profile on one PC and loaded my .jex file. I then synced it to the lan. Then, I created a new profile on another PC and connected it to the lan. Again, it synced pretty fast. New notes are not syncing properly between the two PCs. In one case, a notebook on one PC has 3 notes, one of which is missing two PDFs. The other PC has five notes in the same notebook, one of which is missing a PDF. Since that particular note doesn't appear on the other PC, I don't know if the note would have the PDF attached.
Is there something in the .jex file that could be causing this? Is there another format I can export to that might eliminate this problem?
So...With no response, I decided to do some digging. I discovered the underlying database is SQLLite. Before I retired, I had enough working knowledge of SQL to get thing done (sometimes, a little too much done.
). I am syncing to a local NAS file system, so syncing is fast and I can inspect the contents of the sync directory.
I downloaded an SQL program (SQL Browser for SQL Lite) and took a look at the DBs on two different machines that are supposed to be synced. I found a few interesting things, but I am limited by not knowing how the sync process works. I tried to read the description found here Joplin Sync, but I couldn't follow it.
I don't know if this is helpful to diagnose the problem, but here is what I found.
- I created a new note with the title '2026-04-22 Test Note on PC one.
- I queried the 'notes' table on PC 1 and found the id of the new note.
- I queried the 'sync_items' table on PC 1 and found a record where the item_id matched the notes table id field.
- The record contained a values for id (40557), sync_target (2), sync_time (1776879290279), and item_location (1). All other fields in the record were 0.
- I searched the file system sync folder for an '.md' file with a name matching notes/id and found one that contained info that matched the note I created.
- I ran the sync process on PC 2 multiple times and the new note didn't appear.
- I searched for new note in notes/id in the PC 2 DB and it's not there.
- I searched for sync_items/item_id for the new note and it's not there.
- I performed the same note creation on PC 2.
- The test note from PC 2 appeared on PC 1.
- I added a fairly large attachment to the note on PC 2 and synced.
- The PC 2 test note updated on PC 1 but the attachment was missing.
- I searched the resources folder in on the NAS and found the attachment was missing.
- I added a small PDF file to the test note on PC 1. I found it in the resources folder on the NAS file system.
- I have attached log files for PC 1 and PC 2.
The test note on PC 1 was created with the following time stamp: 22/04/2026 10:34. The test note on PC 2 was created with following time stamp: 22/04/2026 11:06.
Here are the contents on the .md files:
From PC 1:
2026-04-22 test note
id: 77078c33b8e24c6ca18c67e1ab19db1e
parent_id: a4612689f2594c14ba3374780d472f5b
created_time: 2026-04-22T17:34:29.444Z
updated_time: 2026-04-22T17:34:50.279Z
is_conflict: 0
latitude:
longitude:
altitude: 0.0000
author:
source_url:
is_todo: 0
todo_due: 0
todo_completed: 0
source: joplin-desktop
source_application: net.cozic.joplin-desktop
application_data:
order: 0
user_created_time: 2026-04-22T17:34:29.444Z
user_updated_time: 2026-04-22T17:34:39.685Z
encryption_cipher_text:
encryption_applied: 0
markup_language: 1
is_shared: 0
share_id:
conflict_original_id:
master_key_id:
user_data:
deleted_time: 0
type_: 1
From PC 2:
2026-04-22 Test note from Casita (PC 2)
2026-03-27 Jeep Grand Cherokee Owners Manual.pdf
id: eb5eabc9fcef43b48b86ca79fdde2014
parent_id: a4612689f2594c14ba3374780d472f5b
created_time: 2026-04-22T18:06:18.928Z
updated_time: 2026-04-22T18:17:55.430Z
is_conflict: 0
latitude:
longitude:
altitude: 0.0000
author:
source_url:
is_todo: 0
todo_due: 0
todo_completed: 0
source: joplin-desktop
source_application: net.cozic.joplin-desktop
application_data:
order: 0
user_created_time: 2026-04-22T18:06:18.928Z
user_updated_time: 2026-04-22T18:17:55.430Z
encryption_cipher_text:
encryption_applied: 0
markup_language: 1
is_shared: 0
share_id:
conflict_original_id:
master_key_id:
user_data:
deleted_time: 0
type_: 1
Conclusions:
- Both PC 1 and PC 2 upload test notes to the NAS file system.
- PC 1 downloaded the test note from PC 2.
- PC 2 did not upload the resource to the NAS.
- PC 1 uploaded the attachment (resource) to the NAS file system.
- PC 2 did not download the test note or resource from PC 1.
Can anyone help? Is this a problem with the database or notes? Any idea how to recover from this? I can fix Joplin on one of my devices, but if sync isn't working properly, it will just get screwed up again.
PC 2 log.txt (7.5 MB)
PC 1 log.txt (6.5 MB)
I'd recommend that you redact the lattitude and longitude values from your post, because they contain location information which is potentially sensitive for posting on a public forum
Regarding your issue, I'm really not sure which sync target you are using, as you have mentioned a few different ones. If you're flexible regarding which sync target you use, you are best off making a jex export of your full dataset, import it into a new profile in Joplin and then sync it to a new sync target. Then on other devices also create a new profile and sync ro tge same target.
If there is a problem in your local profile and you sync that same profile to other sync targets, it could still transfer whatever issue there is to other sync targets.
Thanks for the advice. Since I am on a VPN, it's not my location, but your point is taken.
Originally, I was using Joplin Cloud for syncing. I think it's been 3 or 4 years without an issue. I cleaned up one machine as best I could and exported a .jex file, which is what I go back to with all this testing.
I created new profiles using Joplin Cloud, but the problems persisted. I already had a Koofr account, so I tried to use Webdav to use it for syncing. It was glacially slow, so that didn't work.
I have an NAS at home and all my devices are 'locally' connected using Tailscale, so I thought I would use the filesystem option for syncing which was what I was using for the testing I reported on my last posting.
I have created and deleted profiles on all my PCs. The testing I reported on was new profiles on both PCs.
Since the entire Joplin community would be up in arms if this was happening univerally, I can only assume there is something in my data or something in my Joplin settings that is causing my problems. On a third PC, I have uninstalled and deleted all the Joplin-based folders. If I restore the .jex file there and still have problems, I will have assume the problem is with the data. I am leaning toward this as the issue. I was hoping someone could review my logs from my testing to see what was failing and why.
It seems to me that all of my older notes are fine and the problem started a month or two ago. If I can get a listing of all my notes in chronological order, perhaps I can delete the newer ones that seem to be causing the problem.
Is it possible it's the data that's the problem and not the sync target or profile?
Thanks for your suggestions.
If you have used a brand new profile with the data imported from a jex, synced that to an empty target, but then get issues when syncing on new profiles also with this target, then yes I'd assume it must be something to do with your data. I can't see any particular entries in the the log files which suggest a problem, but as you have a lot of resources, one thing I'd suggest is to try turning off the OCR in Joplin on all your devices, and see if that helps.
More info...
I thought I would try creating the sync folder on the local computer and then using 'Syncthing' to keep the sync folders in sync. Syncthing did its thing (lol) and both local folders are in sync. The two test notes appear in the local sync folders on both PCs, but they only appear on PC 1. Even though the notes are in the local sync folder for PC 2. They aren't in the database.sqlite DB.
I don't know why. To summarize...I have notes (.md files) in the sync source Joplin won't download.
The two test notes appear in the local sync folders on both PCs
Yeah it must be something to do with your data that is causing the notes to not get updated in the client, because the info you provided suggests changes do get downloaded by the client, but don't get included stored in the database and the data set available in the UI
Did you try disabling OCR? Also try disabling all of your plugins. You could also try changing attachment download behaviour in the advanced sync settings to be auto when you sync a new profile, so they don't automatically get downloaded by the initial sync
So...On the PC that didn't download the note from the other PC, I created a new profile. The only plugins were the built in ones. I don't add any. I changed the OCR option in the General settings to off. I then set the sync target to the local folder on the PC.
When the sync was finished, the test note from the other PC was there. Most of my notes have attachments. I checked several of them. They showed the
icon momentarily and then downloaded the attachment, which I am assuming is the normal behavior when the download attachments setting is set to auto.
As far as sync is concerned, all is well now. I cleaned out some obsolete notes and put them in a .jex file for now. I'll probably create a profile for them at a later date.
I compared the Sync Status pages between the two PCs. Other than one showing all the attachments that weren't downloaded, the counts were identical. Even for the downloads section, the totals of all the notes is the same in both PCs.
I am going to create a new profile in the third PC using the same method and see if it matches.
What have I learned?
- Should I always shut of OCR?
- Should I never use plugins?
- Should I not download all the attachments?
I have gone through almost 2 weeks of struggling with sync issues. In the process of following the instructions to recover syncing with the Joplin Cloud, I have lost dozens upon dozens of irreplaceable records from my mother's death and estate settlement. I only have a year or so to go before I pass the seven-year requirements for the IRS
.
One thing I have learned is that I don't think I'll be returning to the Joplin Cloud for syncing. Because it's a 'black box' type of solution, I cannot use it with as much flexibility as a Dropbox, Google Drive, Onedrive solution where I can actually look at the files and attachments. I am liking the local sync target for the PCs. Right now I am using Syncthing to keep all the PCs in sync, as well as a backup on my NAS. I will likely sync to a cloud storage system, too and use that for my Android phone. The one disadvantage to this is that I will lose the email '@joplincloud' email address this way. Time will tell if I can live without it.
I would be interested to hear your thoughts on OCR and plugins. The only plugins that come to mind that I need are Hotfolder and Combine notes. Can OCR or those plugins be problematic? Not downloading attachments until I need them is not really an issue since they reside in the local sync target and download in seconds or less.
Thanks for your help.
I'm glad you can finally get the sync working properly, and sorry to hear that you lost some data due to sync issues with your initial use of Joplin Cloud.
- Should I always shut of OCR?
- Should I never use plugins?
- Should I not download all the attachments?
I can't answer which of these changes corrected your sync issue, because I can't reproduce the issue without your specific dataset. But if you are interested to get more specific answers, you could retry your previous tests using new profiles and a separate sync target to the one which you have now got working, and see which of these changes individually causes the sync to work correctly. It would also be helpful to the community if your findings were to result in identifying a specific bug in Joplin or a plugin, as then it could potentially get fixed
Thanks for the response. I have a lot of .jex backups, so I may restore one of them to another sync target. I just paid for a year of Joplin Cloud about 2 weeks ago, so I can play with that since I'm not using it. I think I'll restore everything to a local sync target due to speed. Then I'll try the same thing using Joplin Cloud to see if I can duplicate the issue. Something to do next week. 
I spoke too soon. I just created a note on PC1. The sync target on PC1 got the note and Syncthing updated the sync targets on PC2 and PC3. The Joplin apps did not download the new notebook or new note from PC1.
As a test, I created a note on PC2. All 3 sync targets have the new test note from PC2. Neither PC1 nor PC3 instances of Joplin are showing the test note. I created a test note on PC3. The note propagated to the other PCs, but the note didn't appear on either other instance of Joplin.
So...Nothing has changed. The sync target contains files that Joplin doesn't read. Each instance of Joplin on the 3 PCs are brand new profiles. The sync targets for each instance are located in the root of the local C: drive.
PC1 and PC2 have, in addition to the default plugins, Hotfolder and Combine Notes. PC3 only has the default plugins. PC1 and PC2 had OCR disabled. PC3 had it enabled (I just disabled it).
At this point, I should think that if there is a record in a sync target that is not getting updated in Joplin, flashing lights and alarm bells should be going off. The whole point of syncing, whether locally or in the cloud, is to keep important records in sync everywhere.
Any idea what to do next? I can run whatever test you think I need to and am happy to experiment in any fashion. I have a Ubuntu VM that I can stumble around in and try something there, if you think it will help. Thinking my problem was solved, I started to sync my Android phone. I can mess with that, too.
Are there any logs for the sync process that I can enable to get a glimpse into what is going on?
Have you opened many notes containing attachements since you synced the profile which was originally working? It's possible that a certain attachment might be causing the issues, and you have opened a note which downloaded this problematic attachment. Can you check the ~/.config/joplin-desktop/.resources directory on each of your PCs synced to that profile and compare which resources are downloaded?
So...I made a list of attachments. The originating PC (PC1) had 39 files in the resources folder. PC2 had 3 files in the resource folder. For PC3, I forgot to change the attachment setting to 'Auto', so it downloaded all of the attachments. I deleted the profile and created a new one with the proper attachments and OCR settings. After it synced with the local sync target, there were no files in the 'resources' folder.
To keep the test good, I deleted the profiles on PC1 and PC2 again. I deleted the only note I added to PC1. Once the profiles on all 3 PCs were new with no attachments downloaded, I manually created a new notebook and a new note with an attachment in the new folder on PC1.
I searched the local sync target and found the note. I identified the folder ID and the attachment ID in Joplin. Neither of them appeared in the local sync target. Naturally, the notebook and attachment didn't appear on PC2 or PC3 since they never made it to the PC1's sync target. The note that did make it to the local sync target propagated to the sync targets on PC2 and PC3, but did not sync with Joplin on those machines.
The resources folder on PC1 on show the .png and .pdf attachments for the new note. PC2 and PC3 resources folders are empty.
I created a test setup. I have a 'JoplinTestSync' folder on each PC, as well as my NAS. I have used Syncthing to set up synchronization from the NAS to all PCs.
I have created a notebook on each PC and assigned an icon to each. They all propagated to the other two PCs and the NAS. I created a note on PC3 in the test notebook created on PC2. It propagated successfully. I created a note on PC1 with a PDF attachment that copied to the other PCs.
The method of having a local sync target on each machine and keeping them in sync with Syncthing seems like an optimal technique for me. The sync target is exposed on each machine for my inspection and Syncthing is doing a good job keeping it all updated.
Everything is working properly and it seems pretty likely that there is something in my database that the synchronizing routines don't like. My database contains thousands of notes and thousand of attachments. Checking each note to ensure it synchronizes across each local sync target is impractical. Are there any tools or SQL queries I can execute to see where the problem lies? After all this digging, I have a pretty good idea of how Joplin keeps data and where it is stored.
I tried deleting an attachment that was downloaded to see if Joplin would download it again when it was missing. It didn't. Somewhere in the database Joplin knows what's not downloaded and what is. I haven't discovered that yet. I haven't tried to update the SQLite database. Being familiar with DBs, I don't see anything good coming from that without a lot more testing on my part. I'm sure some of you experts already know how all this works a lot better than me.