Pangolog - a minimalist personal expense tracker.
Any modern browser (Chrome, Firefox, Safari, Edge) with JavaScript enabled. IndexedDB is required for local storage - all major browsers support it. Google Drive sync requires a Google account and is entirely optional.
Pangolog can be installed as a standalone app on your device for a better experience - no browser chrome, faster access from your home screen.
iOS (Safari)
Tap the Share button at the bottom of the screen, then select "Add to Home Screen". Safari only - Chrome and Firefox on iOS do not support installation.
Android (Chrome)
Tap the three-dot menu in the top right and select "Add to Home Screen" or "Install app". You may also see an install prompt appear automatically.
Desktop (Chrome / Edge)
Click the install icon in the address bar, or open the browser menu and select "Install Pangolog".
Other browsers
PWA installation support varies by browser and OS. Check your browser's documentation or look for extensions that add PWA support - for example, PWAs for Firefox.
Small Dimes
Everyday transactions logged by month - groceries, meals, subscriptions. Stored and queried per month.
Big Bucks
Large or irregular transactions logged by year - gadgets, travel, medical. Stored and queried per year.
Categories
Labels attached to transactions. Each category has a name, colour, and emoji icon. Categories can be marked as income-only or Big Bucks-only to filter them from irrelevant pickers.
Transactions
View and manage Small Dimes or Big Bucks. Switch between modes with the toggle. Filter by month (Dimes) or year (Bucks). Optionally include Big Bucks alongside Dimes for a combined view.
Categories
Create, edit, and reorder categories. Drag to change priority - order is reflected in the category picker when adding transactions.
Summary
Segmented bar charts showing spending by category, for expenses and income separately. Available in monthly and yearly views.
Recurring rules
Set up rules that automatically generate transactions on a daily, weekly, monthly, or yearly schedule.
Settings
Configure display currency, Google Drive sync, and data export/import.
Ctrl/Cmd + K opens the command palette for quick navigation and actions anywhere in the app.
Ctrl/Cmd + Enter opens the create dialog on the Transactions, Categories, and Recurring rules pages.
Ctrl/Cmd + B toggles between Small Dimes and Big Bucks on the Transactions and Summary pages.
Ctrl/Cmd + B switches between the Categories and Recurring Rules tabs on the Manage page.
Ctrl/Cmd + I toggles "Include Big Bucks" on the Transactions and Summary pages when viewing Small Dimes.
Rules are checked and executed on app launch and whenever the app becomes visible again (e.g. switching back from another tab or app).
Each rule generates at most one transaction per execution, regardless of how much time has passed. If you have not opened the app in a long time, only the most recent missed occurrence is created - earlier gaps are silently skipped.
A hidden debug section is available in Settings. Tap the "Settings" heading 5 times quickly to reveal it.
View logs
Opens a dialog showing all in-memory log entries recorded during the current session and recent sessions. Logs are retained for 30 days and capped at 500 entries. From the dialog you can export the log as a JSON file or copy the content to the clipboard.
Clear Logger entries
Permanently deletes all stored log entries.
Sync is optional and can be enabled or disabled from Settings. When connected, data is synced automatically after changes and whenever the app becomes visible again. Syncing is debounced - the app waits 30 seconds after the last change before uploading, rather than sending a request on every edit. This reduces unnecessary API calls and avoids hitting Google Drive's rate limits.
Conflicts are resolved by last-write-wins using the record's updatedAt timestamp.
Storage structure