The Zotero Data Directory
Locating your Zotero Library
By default, your Zotero library is stored in the 'zotero' directory of either your Firefox profile (Zotero for Firefox) or in the profile of Zotero itself (Zotero Standalone). If you install Zotero Standalone when you already have Zotero for Firefox installed, you will get asked during installation whether you want Zotero Standalone to use the same library used by Zotero for Firefox (the reverse holds true if you install Zotero for Firefox after installing Zotero Standalone).
The easiest and most reliable way to find your Zotero data directory is by clicking the “Show Data Directory” button in the Advanced tab of your Zotero Preferences window. In Zotero for Firefox, you can generally access the Zotero preferences from the Firefox Add-ons window even if you can't open the Zotero pane.
Unless you have selected a custom data directory in the Advanced pane of the Zotero preferences, your Zotero data is stored within the following OS-dependent directories, which may be hidden by default on some systems.
The “Show Data Directory” button will always reveal the data directory currently in use. If you're unable to access the Zotero preferences, a search for the file name 'zotero.sqlite' can also help you locate the Zotero data directory.
Zotero for Firefox
C:\Documents and Settings\<username>\Application Data\Mozilla\Firefox\Profiles\<randomstring>\zotero
|Linux (most distributions)||
C:\Documents and Settings\<username>\Application Data\Zotero\Profiles\<randomstring>\zotero
|Linux (most distributions)||
The most important file in the 'zotero' directory is the zotero.sqlite file, which contains the majority of your data: item metadata, notes, tags, etc. The directory also contains a 'storage' subdirectory, containing all of your file attachments, such as PDFs, web snapshots, audio files, or any other files you have imported (note that files that are linked are not copied into this subdirectory).
Your 'zotero' directory will likely contain several other files. These can include zotero.sqlite.bak (an automatic backup of zotero.sqlite, which is updated when you quit Firefox or Zotero Standalone and the existing zotero.sqlite.bak file hasn't been updated in the last 12 hours) and zotero.sqlite.[number].bak files (automatic backups of zotero.sqlite that are created during certain Zotero updates).
Warning: Before you copy, delete, or move any of these files, be sure that Firefox and/or Zotero Standalone are closed. Failure to do so before moving these files can damage your data.
Backing Up Your Zotero Library
We strongly recommend that you regularly back up your Zotero library. Syncing is not a good substitute for backing up: the Zotero server only stores the most recent version of your library, and it takes just a single (possibly automatic) sync to change the server copy.
Rather than backing up just your Zotero library, we recommend using a backup utility that automatically backs up your entire hard drive to an external device on a regular basis. Most modern operating systems offer such functionality (e.g., Time Machine on Macs).
If you want to back up your Zotero library specifically, locate your Zotero library, close Firefox and/or Zotero Standalone, and copy your 'zotero' data directory to a backup location (copy the entire directory, including 'storage' and the other subdirectories), preferably on another storage device. As with all important data, it is a good idea to back up your Zotero data frequently.
Warning: Zotero allows you to export your Zotero library as a Zotero RDF file. However, exporting and importing your library via RDF won't result in an exact copy of your library, and it isn't recommended as a backup strategy.
For step-by-step, illustrated backup instructions, see this guide provided by the Northwestern University library.
Restoring Your Zotero Library from a Backup
Between manual backups, automatic backups, and synced data, it's often possible to restore a lost Zotero library or restore data that was accidentally deleted.
Before following these steps, be sure that Zotero is looking in the right place for your data.
Restoring your Zotero library using Zotero syncing
If you were using Zotero syncing and have an empty local library, you can likely restore your library simply by syncing with the Zotero server. After verifying that your library exists on zotero.org, simply reenter your username and password into the Sync pane of the Zotero for Firefox or Zotero Standalone preferences and click the Sync button in the toolbar. (Zotero only syncs explicit deletions, so just syncing an empty library won't overwrite the server data unless you deleted items manually.)
If you have a local Zotero library that you want to overwrite, close Zotero and delete the old Zotero data directory before syncing.
Restoring your Zotero library from a backup
If you were not using Zotero syncing (or were but don't want to perform a full sync) and have a backup of your Zotero data directory, you can restore your library by replacing the contents of your active 'zotero' directory with that of your backed-up 'zotero' directory.
Open the Advanced pane of the Zotero preferences and click “Show Data Directory”. This should reveal your active data directory containing zotero.sqlite and possibly a 'storage' subdirectory. Close Firefox or Zotero Standalone and move zotero.sqlite and 'storage' from this folder into a temporary folder on your desktop. Next, copy — don't move — zotero.sqlite and 'storage' from your backup into the active data directory. When you now reopen Firefox or Zotero Standalone, your Zotero library should be restored.
Once you've successfully restored your data, you can delete the temporary folder on your desktop.
Note that, if you were using Zotero syncing, any changes you made to your library since the backup and subsequently synced to the Zotero server will be applied to your restored database as soon as you sync.
Restoring your Zotero library from a backup and overwriting synced changes
If you or someone else made unwanted changes to your Zotero library and synced those changes to the server, you may be able to restore data by using a local backup of your Zotero data directory.
First, disable auto-sync in the Sync pane of the Zotero for Firefox or Zotero Standalone preferences. Open the Advanced pane of the preferences and click “Show Data Directory”. This should reveal your active data directory containing zotero.sqlite and possibly a 'storage' subdirectory. Close Firefox or Zotero Standalone and move zotero.sqlite and 'storage' from this folder into a temporary folder on your desktop. Next, copy — don't move — zotero.sqlite and 'storage' from your backup into the active data directory. When you now reopen Firefox or Zotero Standalone, your Zotero library should be restored.
Were you to sync again now, the more recent server data would replace the data you just restored. Instead, you can duplicate the affected items by right-clicking on them and choosing “Duplicate Item(s)”. When you then sync, the more recent changes from the server will still be applied to your local database, but the duplicate items will not be affected and will sync up to the server.
Alternatively, if this is a personal library and many items were affected, you can use the Restore to Zotero Server sync reset options to replace your server library with your local one, but this isn't recommended in general, particularly with large libraries. (If this is a group library, Restore to Zotero Server will have no effect.)
Once you've successfully restored your data, you can reenable auto-sync and delete the temporary folder on your desktop.
Restoring from the last automatic backup
If you make a critical mistake while using Zotero—for example, if you accidentally delete a large set of items—you may be able to revert to the last automatic backup.
If you're using syncing but don't have auto-sync enabled, first check your online library on zotero.org to see if the data is correct there. If so, you can use the Restore from Zotero Server sync reset option to replace your local library with the server library.
If you were not using syncing or the new data has already synced to the server, follow these steps:
- First, make sure to keep Firefox or Zotero Standalone running, as the automatic backup might be overwritten when you quit the application.
- If you're using syncing, temporarily disable auto-sync in the Sync pane of the Zotero preferences.
- Locate your Zotero library and make a copy of the zotero.sqlite.bak file and name it zotero.sqlite.new.
- Optionally, in Zotero, select any items you have added since you last started Firefox/Standalone (a saved search may be helpful), right-click the selection, choose “Export Selected Items…”, and export to Zotero RDF.
- Close Firefox/Standalone. In your data directory, rename zotero.sqlite to zotero.sqlite.old, rename zotero.sqlite.new to zotero.sqlite, and restart Firefox/Standalone. You should now see the backed-up version of your library.
- If you were using syncing, were you to sync again now, the more recent server data would replace the data you just restored. Instead, you can simply duplicate the items — by right-clicking and choosing “Duplicate Item(s)” — so that the new copies remain even after syncing. If this is a personal library and many items were affected, you can also use the Restore to Zotero Server sync reset options to replace your server library with your local one, but this isn't recommended in general, particularly with large libraries. (If this is a group library, Restore to Zotero Server will have no effect.)
- Finally, if you exported any items before the restore, import the RDF file you created to restore the data added during your last Firefox/Standalone session.
If you're happy with the results, you can delete zotero.sqlite.old.
Restoring from the last upgrade backup
Zotero prompts you to upgrade your database when you install certain (usually major) new versions. If you would like to revert to a previous version at a later point, you will have to manually replace your database with the automatic backup Zotero made during the upgrade. In most cases this will be the highest-numbered “zotero.sqlite.[num].bak” file in your Zotero data directory.
It's a good idea to make a backup of your entire Zotero data directory before making any changes.
If you have synced your data with the Zotero server, reverting to a previous version is as simple as reinstalling the previous version, closing Firefox or Zotero Standalone, replacing “zotero.sqlite” in your Zotero data directory with “zotero.sqlite.[highest-number].bak”, and restarting Firefox or Zotero Standalone. (Note that if you try to open an upgraded database in an earlier version, Zotero will display an error. Just close Firefox or Zotero Standalone and replace the SQLite file.) Zotero will then sync from the Zotero server any changes made since you last used the older database.
If you were not using syncing, you may wish to export to Zotero RDF any items added since the database upgrade and then reimport those into the earlier version. Sorting your library by Date Added may help you find such items.
Bear in mind that word processor documents used with later Zotero versions often cannot be used again with earlier versions.
Troubleshooting Zotero Data issues
Where did my items go?
In rare cases after upgrades or system restores, users open Zotero to find their libraries almost completely blank. If this happens to you, do not panic. In almost every case, Zotero is simply looking in the wrong location for the data. You need to make sure that Zotero is looking in the right location for your Zotero files and that the right files are in that spot.
If you're using Zotero for Firefox, note that a library can also appear empty due to an extension conflict, so be sure to check known incompatible extensions and disable all your other Firefox extensions if you're sure that Zotero is looking in the right place.
1. (Zotero for Firefox) Make sure you are in the correct Firefox Profile.
In some rare situations, Firefox creates a new profile during an upgrade. (If you notice that your bookmarks and browser history have changed or disappeared, it's likely that this has occurred.) You can use the Firefox Profile manager to make sure that you are in fact in the correct profile.
2. Make sure your data files are in the directory where Zotero is looking.
Use the “Show Data Directory” button in the Advanced pane of your Zotero preferences to reveal the current data directory. If this isn't the directory you were expecting, you can either specify a different data directory from the preferences or, with Firefox or Zotero Standalone closed, move any existing Zotero files (zotero.sqlite and 'storage') out of the way and copy your desired Zotero files into the displayed directory. If you're not sure where your data is located, it's a good idea to look for larger versions of zotero.sqlite or zotero.sqlite.bak stored elsewhere on your hard drive and to look in the 'storage' directory for recently saved PDFs and other files.
Unless you have a good reason to use a custom data directory location, we recommend using the default location within your Firefox or Zotero Standalone profile.
When specifying a custom data directory location, keep in mind that Zotero doesn't move or copy any data. You still need to copy your data into the specified location. Also, when pointing the data directory location to an existing directory, be sure to specify the parent directory containing zotero.sqlite and 'storage', not the 'storage' directory itself.
Finally, remember to close Firefox or Zotero Standalone before making any changes to Zotero files.