Fresh codes,
already waiting.

Simple OTP watches your connected Gmail accounts on your Mac, keeps used codes out of the way, and fills the field you’re in.

  • macOS 15+ · Apple silicon
  • Private by design
Fresh⌕ ◉ ◫   Tue 9:41 AM
Code for accounts.example104 892
Fill ↵
Live detectionSmart filteringOne-tap fill

The OTP lifecycle,
handled locally.

01

Fresh

New codes surface once, with a visible validity countdown.

104 892
02

Private

Extraction, ranking, and storage happen on your Mac.

03

Finished

Copying or filling marks a code used and clears fresh suggestions.

104 892✓ Used

Works across your
Gmail accounts.

Connect the accounts you need. Each account keeps an independent history cursor, so refreshes stay efficient.

  • G personal@example.com
  • G work@example.com
  • G side@example.com
Simple OTP
All accounts3 freshIncremental sync

Privacy architecture
that stays local.

Simple OTP uses Gmail’s read-only API. Tokens live in Keychain; decoded email bodies are discarded; code state stays in a local SQLite store.

  • Read-only Gmail access
  • No analytics or tracking
  • Disconnect whenever you want
Gmailread-onlyKeychainsecure tokensLocal enginedetect + rankMenu barcopy + fill

Frequently asked questions

What Gmail access does Simple OTP need?

Read-only message access for the Google accounts you explicitly connect.

Where are codes stored?

In a local SQLite store on your Mac. Email bodies are not retained.

Can I use multiple Gmail accounts?

Yes. Sync and deduplication are tracked independently per account.

How does Simple OTP know a code is used?

Copy and fill actions mark it used automatically; manual used and unused controls are also available.

Ready when you are.

Fresh codes. Private by design. Made for macOS.

Download for macOSOpen installed app