Where Does OnionShare Store Settings and Keys?
Where OnionShare keeps its settings JSON and persistent onion keys on each OS, and how to move them.
Last updated
OnionShare keeps settings in one JSON file inside a per OS data folder. Persistent onion keys live as separate JSON files in a child directory, one per saved tab. Tor working data sits beside them in its own tree.
Chat content is ephemeral with no history file to hunt, so backup means settings plus keys only. The CLI shares the same files as the desktop app, which keeps scripted and clicked setups in sync. Copy the data folder whole for migration. Website mode files reference the same keys, so one folder covers every mode.
Where OnionShare stores this, by platform
%APPDATA%\OnionShare\onionshare.json
Settings JSON plus persistent keys child and Tor data beside it. CLI and GUI share these files. Chat stays ephemeral with no history file.
~/Library/Application Support/OnionShare/onionshare.json
Same settings plus keys layout under Application Support. Copy the whole folder with the app closed. Reach Library through Go to Folder.
~/.config/onionshare/onionshare.json
Same settings plus keys layout under XDG config. Tor data sits beside the JSON. Copy the whole folder for migration.
Frequently asked questions
How do I move my persistent onion address to a new computer?
Copy the whole data folder for your OS from this post onto the new machine. Each saved tab keeps its address plus secret key in a persistent child file. The same onion hostname then serves from the new install.
How do I override the OnionShare config from the command line?
Pass a custom config file and persistent file to the CLI flags for fenced setups. The GUI reads the same JSON the CLI writes, so both ends stay compatible. Keep keys out of shared folders regardless of mode.
Notice an outdated path? Let us know.