The Self-Hosted Personal Finance App That Actually Works For You
Cashlytics is a free, open-source budget application you run on your own server. Keep tabs on your income, expenses, and budgets — with a built-in AI assistant that responds to your financial questions in plain language. No recurring payments, no cloud lock-in, no data sharing.
demo@cashlytics.onlineadmin123456789
All the Features of a Personal Finance App, Hosted by You
With everything from AI-powered insights to multi-currency tracking and CSV import — Cashlytics has everything a modern personal finance app needs, without the monthly bill.
Personal Finance Dashboard
View your entire financial picture at a glance. KPI cards display balances, spending, and net worth across all your accounts.

Budget Analytics & Spending Forecasts
See where your money comes and goes each month, and look into the future with smart trend analysis. Identify problem categories before they become problems.

AI Financial Assistant
Ask your finances a question — in plain language. Cashlytics' built-in AI assistant reads your transaction history and gives you straight answers about your spending, savings, and financial habits. No other free self-hosted finance app includes this.

Multi-Account Tracking
Access checking, savings, credit cards, and investment accounts all in one place. Every account. One dashboard.

Custom Categories & Tags
Add categories that reflect your real life — with custom icons, colors, and groupings. Your budget, your rules.

Dark & Light Mode
Switch between a polished dark theme and a clean light mode. Finance tracking shouldn't hurt your eyes.

Multi-Language Support (EN/DE)
Use Cashlytics in English or German out of the box. Additional languages can be added — Cashlytics is built for global self-hosters.

Multi-Currency Support
Track accounts in different currencies. Automatic conversion keeps your totals accurate whether you earn in EUR, USD, or anything else.

Receipt & Document Upload
Attach receipts and invoices directly to transactions. Complete financial records, no paper required.

CSV Import Workflow
Import transactions from any bank via CSV. Cashlytics first stages each row, marks duplicates, and lets you verify before committing — no surprise imports.

Secure User Authentication
Password-protected login with full password reset support via SMTP. Secure by default, configurable for your setup.

Multi-User Household Support
Invite family members or a partner. Each user gets their own private data space — separate accounts, shared server.

Single-User Privacy Mode
Just need it for yourself? Single-user mode removes the login screen entirely. Pure, frictionless personal finance.

SMTP Email Integration
Connect your mail server for verification emails, password resets, and payment reminders. Works with Gmail, Mailgun, or any SMTP provider.

Installable PWA
Install Cashlytics on your phone or desktop like a native app. Works on iOS, Android, and desktop browsers — no app store required.
PWA
Screenshot not found: feature-pwa
Push Notifications
Set browser push reminders for upcoming bills and recurring payments — no more surprises.
Push Notifications
Screenshot not found: feature-push
See It In Action
A complete view of your financial life

Quick Start
Get Cashlytics running in under 5 minutes
Download & Configure
Download the official self-hosting compose file and .env template.
mkdir cashlytics && cd cashlytics
curl -O https://raw.githubusercontent.com/aaronjoeldev/cashlytics-ai/main/docker-compose.selfhost.yml
curl -O https://raw.githubusercontent.com/aaronjoeldev/cashlytics-ai/main/.env.example
cp .env.example .envReview Compose
Use the bundled compose setup with app, cron reminders, and PostgreSQL.
services:
cashlytics:
image: ghcr.io/aaronjoeldev/cashlytics-ai:latest
ports:
- "3000:3000"
cashlytics-cron:
image: alpine:3.20
environment:
CRON_SECRET: ${CRON_SECRET}
NOTIFICATION_SCHEDULE: ${NOTIFICATION_SCHEDULE:-0 8 * * *}
postgres:
image: postgres:16-alpine
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}Configure .env
Set required values and optionally enable AI, PWA push notifications, and SMTP.
# Required
POSTGRES_PASSWORD=your_secure_password
AUTH_SECRET=replace_with_a_long_random_secret
# Recommended for Docker/VPS/reverse proxy
AUTH_TRUST_HOST=true
# Optional - app URL
NEXT_PUBLIC_APP_URL=http://localhost:3000
# Optional - locale/currency defaults
NEXT_PUBLIC_DEFAULT_LOCALE=de
NEXT_PUBLIC_DEFAULT_CURRENCY=EUR
# Optional - registration mode
SINGLE_USER_MODE=true
SINGLE_USER_EMAIL=you@example.com
# Optional - for AI assistant features
OPENAI_API_KEY=sk-proj-...
# Optional - for PWA push reminders
VAPID_PUBLIC_KEY=...
VAPID_PRIVATE_KEY=...
VAPID_SUBJECT=mailto:you@example.com
CRON_SECRET=replace_with_random_hex
NOTIFICATION_SCHEDULE=0 8 * * *
# Optional - SMTP for password reset/welcome emails
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_USER=your-email@example.com
SMTP_PASS=your_smtp_password
SMTP_FROM=noreply@example.com
# APP_URL=https://your-domain.comStart Cashlytics
Run Docker Compose and open your instance on port 3000.
docker compose -f docker-compose.selfhost.yml up -d
# Open http://localhost:3000Built With Modern Tech
A robust stack for reliability and performance
Start Managing Your Finances — For Free, Forever
Take full control of your personal finances with Cashlytics — a free, open-source, self-hosted budget app with built-in AI assistance. No subscription required. No data leaving your server. Just you and your finances, finally in sync.