Last updated with the 1.0.27 release.
Keysi reads the menu structure of whatever app is frontmost, on your Mac, to show you its keyboard shortcuts. That information never leaves your Mac. To warn you when another app's global hotkey would swallow one of those shortcuts, it also reads, without changing them, the hotkey settings that Raycast and Rectangle save on your Mac. That stays on your Mac too. Two network calls happen automatically, both described in full below, and nothing else does unless you turn it on yourself, or press Send on the feedback form. Crash diagnostics are off by default; if you turn them on in Settings, they're generated on-device by Apple's MetricKit and never transmitted anywhere automatically. Usage analytics, inside the app and on this website, are opt-in too; see Analytics below for exactly what's collected when you say yes.
Keysi asks for Accessibility permission the first time it runs. This is what lets it read another app's menu bar structure via macOS's Accessibility API. Verbatim, from the permission prompt itself:
"Keysi needs Accessibility access to read the keyboard shortcuts of the app you're using. It never controls your keyboard or mouse without an explicit click on a shortcut row."
Keysi only ever simulates a click on your explicit action: clicking a shortcut row to run it. It never types on your behalf, never moves your mouse, and never records what you type into other apps. It does see that keys are pressed, which is how holding ⌘ works.
Keysi is closed source, so the security page lists every Accessibility call it makes, every network request and every file it reads, with commands to check each one on your own Mac.
Nothing else Keysi does touches the network by default. The shortcuts it reads, the apps you use, your custom cheat sheets, and your settings all stay on your Mac, with one opt-in exception, covered next.
Two separate analytics systems exist, covering two separate things: this website, and the Keysi app itself. Neither is on unless you actively turn it on, and turning either off again is one click.
This website uses Google Analytics to understand traffic: which pages get visited, what referred you here, and whether the "Buy" button gets clicked. Nothing from Google loads until you click "Accept" on the banner shown on first visit; clicking "Decline" (or simply ignoring the banner) means no Google request is ever made. Google's own privacy policy governs how it handles this data. You can withdraw consent at any time by clearing this site's data in your browser, which brings the banner back on your next visit.
The Keysi app has a "Share usage analytics" toggle in Settings → General, off by default. The last page of the welcome window offers the same choice once, as an unticked "Share anonymous usage data" box; ticking it turns on that same setting, and leaving it unticked leaves analytics off. If you turn it on, Keysi sends a small, disclosed set of anonymous events to PostHog (EU-hosted):
Nothing else. Never your license key, never the amount you paid or any payment detail, never the content of any document, message, or window, never anything from a custom cheat sheet, and never the menus Keysi reads, not even the name of a shortcut you triggered. Turning the toggle back off stops all future events immediately.
Keysi has a feedback form, in the menu bar, in Settings → General, and very occasionally offered by a one-line prompt. Nothing is sent from it unless you press Send, and the form shows you the exact payload first, line by line, above the button. This is the one thing Keysi sends that isn't covered by the analytics toggle: whether that toggle is on or off makes no difference here, because pressing Send is its own decision and it covers exactly one message.
What goes with it:
dark-overlay. The form shows it, and you can remove it
before sending.It goes to the same EU-hosted PostHog project as the opt-in analytics, as a single event with a random one-off identifier. Two messages sent from the same Mac cannot be linked to each other, or to anything the analytics toggle collects, and no profile is built from them.
What never goes with it, whatever the boxes say: the app you were using, any menu Keysi has read, anything Shortcut Coach has recorded, your diagnostic log, and your licence key.
A short excerpt of what you write may be quoted in an issue on Keysi's own development tracker, so the problem you reported can be tracked until it's fixed. That tracker is private, readable only by whoever works on Keysi, and your message is not published anywhere. Email addresses, file paths under your home folder, links and anything shaped like a licence key are stripped out of the excerpt even so, and your reply address is never included in it at all.
The public roadmap is built from those private issues, but nothing you wrote is copied onto it. Each request there has a title and description written by the developer, and a count of how many messages asked for it. It never shows who asked, what they said, or any of the details listed above.
Shortcut Coach keeps a count, on your Mac only, of which menu commands you
pick with the mouse that already have a keyboard shortcut, and how often you
later press that shortcut instead. It also times how long your own menu trips
take, so the progress figures Keysi shows you are measured rather than
guessed. That counting continues on the free tier, even
though the coaching itself is part of Keysi Pro. It is what lets Keysi show
you real numbers about your own habits if you ever look. None of it is
transmitted anywhere; it lives in
~/Library/Application Support/Keysi/. Turning off "Suggest
shortcuts when you click with the mouse" in Settings → Coach stops the
counting entirely, and "Reset Statistics" on that same pane deletes what has
been collected.
So that an app's shortcuts appear instantly the first time you bring
Keysi up after it starts, it also keeps a copy of the menus it has read, on your Mac
only, in MenuCache.json in that same folder: menu command
names and their shortcuts, for up to 12 apps, each dropped after 30
days. It leaves out the menu items that are your own content rather
than a command, such as the list of open windows in the Window menu and
the names in Open Recent. "Reset Statistics" in Settings → Coach deletes
this file's contents too.
It also counts, in ShortcutlessPicks.json in that same folder,
the menu commands you choose with the mouse that have no keyboard
shortcut, so Settings → Coach can suggest one: the app, the menu, the
command's name, and the dates of your clicks from the last 30 days. Older
clicks are dropped. It never records the menu items that are your own
content, such as open windows and Open Recent, and never anything from a
web browser's menus. Keysi only suggests a combination; adding it in
System Settings is up to you. The same switch stops this counting, and
"Reset Statistics" deletes it.
If you send feedback while you're offline, the message waits in
~/Library/Application Support/Keysi/ and goes out the next
time Keysi starts with a working connection, or is discarded after a
fortnight, unsent. Anything you start writing and don't send is kept in
the same place, so closing the window doesn't throw it away; it stays on
your Mac until you send it or delete it yourself. Keysi also remembers,
on your Mac only, whether it has already asked you for feedback, so that
it doesn't ask again.
Your license state, trial state, and preferences (hold delay, hotkey binding, menu bar icon visibility, and so on) are stored locally on your Mac, in the standard macOS locations for app preferences and keychain items, and are never uploaded anywhere by Keysi itself.
Any custom JSON cheat sheets you add live in
~/Library/Application Support/Keysi/Sheets/ on your own
Mac. Keysi never uploads or shares the contents of that folder with
anyone.
Settings → Sync is off until you turn it on. When it is on, Keysi copies your custom cheat sheets, favorites, hidden shortcuts and your appearance and trigger settings into a folder that you choose — your iCloud Drive, Dropbox, or any other folder — and reads what your other Macs put there. Whatever service owns that folder carries the files between your Macs, under its own terms; Keysi itself makes no network connection for this and has no server that sees them. Your license, trial state, analytics choice, Coach statistics and window positions are never copied. Turn it off, or delete the files, and Keysi stops. “Export Settings” and “Import Settings” do the same with a single file you save and open yourself.
If anything here is unclear, or you want more detail on a specific behavior, reach out. Contact details are on the press page.