Otterdock Privacy: Permissions, Local Data, and What Goes Online
Which macOS permissions each edition asks for and why, where groups and settings are stored, and the four kinds of network traffic, including optional analytics.
Otterdock keeps your groups on your Mac: group names, item paths, order and settings live in Application Support (or the sandbox container for the Mac App Store edition) and are never uploaded. The Mac App Store edition asks for no permissions beyond the sandbox. The Direct edition asks for Accessibility only if you turn on its custom popup or hover, and works without it. Network use is limited to update checks (Direct), license or purchase verification, the Creem checkout page, and usage analytics that you can turn off; in Mac App Store 1.1.4 and later they are off until you turn them on.
On this page
A Dock utility sits close to the system, so it is fair to ask what it can see and where your data goes. This page is the complete answer for both Otterdock editions: every permission, every file location, every kind of network request. It is written from the app's source and shipping configuration, and the privacy policy is the binding document if the two ever disagree.
Permissions by edition
| Mac App Store edition | Direct edition | |
|---|---|---|
| App Sandbox | Yes, always | No (standard Developer ID app) |
| Accessibility | Never requested | Requested only when you turn on the custom popup or hover; optional |
| Files and folders | Only the items you add through the picker or by dragging, via security-scoped bookmarks | The items you add; standard file access |
| Contacts, Calendar, Photos, camera, microphone, location, screen recording | Not requested, no entitlements | Not requested |
| Network | Outgoing only, for the purposes listed below | Same |
Why Direct asks for Accessibility. macOS does not let one app change what happens when you click another app's Dock icon. The only supported way to notice those clicks, and to know where the pointer is over the Dock, is the Accessibility permission. Otterdock uses it for exactly two things: detecting clicks and hover on its own group icons, and suppressing the native stack for a moment so its popup can open instead. It does not inspect other windows, read text, or log keys. If you decline, or revoke it later in System Settings > Privacy & Security > Accessibility, Direct falls back to native stacks and everything else keeps working: global shortcuts, widgets, Dock sync and the group editor are independent of it. The three interaction modes and their permission needs are compared in click mode vs hover mode.
Why the Mac App Store edition never asks. It runs inside Apple's sandbox, which forbids observing the Dock at all. That is also why its groups open as native stacks and why Otterdock cannot add the Dock entry for you there; the trade-offs are in Direct vs Mac App Store.
What is stored on your Mac, and where
| Data | Direct edition | Mac App Store edition |
|---|---|---|
Group configuration (groups.json: names, item paths, order, icon style, shortcuts, opener rules) | ~/Library/Application Support/Otterdock/ | The same layout inside the app's container under ~/Library/Containers/ |
| Generated group folders (the folders that appear as Dock stacks) | ~/Library/Application Support/Otterdock/Groups/ | Inside the container |
| Skins and cached group icons | ~/Library/Application Support/Otterdock/Skins/ and the app's caches | Inside the container |
| Settings (interaction mode, appearance, launch at login) | Standard preferences (fun.savetimefor.otterdock) | Standard preferences in the container |
| Widget snapshot (group names, order, icons for the widget extension) | App Group container shared with the widget | Same |
| Direct license key | macOS Keychain | Not applicable |
| Pro purchase | Not applicable | Apple's receipt, verified through StoreKit |
| Analytics identifiers (only if analytics is on) | Random IDs in preferences; reset when you turn analytics off | Same |
Two things follow from this. First, Otterdock stores references to your items, not copies: a group that contains a 2 GB video holds a path, and deleting the group never deletes the video. Second, groups are local to the Mac. There is no iCloud or Otterdock cloud sync; the export and import in Settings > Backup is the way to carry groups to another machine. Details and caveats are in does Otterdock sync between Macs.
Group folders contain aliases and link files that Otterdock generates and refreshes. Treat them as Otterdock's: in Mac App Store 1.1.4 and later the app tracks the entries it created and leaves anything else alone, but Direct 1.1.3 rebuilds the folder on sync and can remove files you placed there by hand. Keep your own files in your own folders and add them to the group as items.
What goes over the network
Otterdock is not a fully offline app, and saying so would be misleading. These are all the connections it makes:
- Update checks (Direct only). On launch, Direct asks
releases.savetimefor.funfor the Sparkle appcast and downloads an update only when you accept. Homebrew users can turn off in-app checks and letbrew upgradehandle it. The Mac App Store edition updates through the App Store. - License verification (Direct Pro). Activating, validating or deactivating a license key talks to our license server (
api.savetimefor.fun), which relays to Creem. The request carries the key and a device identifier so the three-device limit can be enforced. Keys are stored in your Keychain, and macOS may ask for your login password the first time Otterdock reads it; that prompt is explained in the app before it happens. - Purchases. Direct's Buy Pro button opens a Creem checkout page in your browser; Otterdock never sees your card. The Mac App Store edition uses Apple's in-app purchase sheet. How the Creem flow works, and what a Merchant of Record is, is covered in how Otterdock payments work with Creem.
- Usage analytics (optional). When enabled, Otterdock sends event names (for example
popup.openedorsettings.changed), the app version and edition, a random installation ID, and purchase-related events to TelemetryDeck and PostHog. It never sends group names, item paths, URLs, file contents or license keys. In the Direct edition a checkout can associate the random ID with your order so we can see which features led to a purchase; the Settings text says so.
Default state of analytics. Mac App Store edition 1.1.4 and later: off until you turn it on in Settings. Direct edition 1.1.3: on by default with a switch in Settings > Usage Analytics; the next Direct release adopts the same off-by-default behaviour. Turning it off stops sends immediately, discards queued events and resets the local IDs.
Nothing else contacts the network. Opening a web link from a group simply hands the URL to your browser.
Moved, renamed or missing items
Because groups store paths, moving or renaming a file breaks that entry. In the group it stops opening; in the Dock stack, the alias macOS shows for it may stop resolving. Fix: open Otterdock, remove the entry, add the item again from its new location. The group's other items and its Dock icon are unaffected. The Mac App Store edition additionally keeps a security-scoped bookmark per item; if macOS can no longer resolve one, Otterdock asks you to reselect the file, which is the sandbox asking for renewed permission, not a bug.
Uninstalling cleanly
- Direct: quit Otterdock, remove its groups from the Dock (Remove from Dock in the editor, or drag the icons off), move
Otterdock.appto the Trash, and delete~/Library/Application Support/Otterdockif you do not want to keep your groups. Remove the license from Keychain Access if you deactivated it; deactivating first frees the device slot. - Mac App Store: delete the app the way you delete any App Store app. macOS removes the container with it. Your Pro purchase stays with your Apple Account.
Neither uninstall touches the files you added to groups. Full install steps for both editions are in how to install Otterdock on macOS.
Frequently Asked Questions
Why does the Direct edition ask for Accessibility permission?
Only to notice clicks and pointer position over its own Dock icons so it can open its popup instead of the native stack, and to detect hover. It does not read your screen, keystrokes or other apps. If you never turn on the custom popup or hover, it never asks.
Are my groups or files uploaded anywhere?
No. Group configuration is a local file, and Otterdock only stores paths to your files, never the files themselves. Nothing about group contents is sent to any server.
Does Otterdock read my Contacts, Calendar or browsing history?
No. The app has no Contacts, Calendar, Photos, camera, microphone or location entitlements and never requests those permissions.
What does usage analytics send if I turn it on?
Event names such as a group being created or a popup opened, the app version and edition, a random installation ID, and purchase-related events. No group names, file paths, URLs or license keys. The setting also says exactly this before you enable it.
Can I use Otterdock fully offline?
Yes for everything the groups do. Buying or restoring Pro, checking for a Direct update and sending analytics need a connection; none of them are required to use the app.