Troubleshooting Guide¶
This guide covers common issues and their solutions. If you don't find your issue here, please open a GitHub issue.
Installation Issues¶
Docker Won't Start¶
Symptom: docker compose up fails or container keeps restarting.
Solutions:
-
Check Docker is running:
If this fails, start Docker Desktop (macOS/Windows) or the Docker service (Linux). -
Check port availability:
If in use, change the port indocker-compose.yml: -
View container logs:
-
Rebuild from scratch:
Application Won't Load in Browser¶
Symptom: Browser shows "connection refused" or blank page at localhost:9525.
Solutions:
-
Verify container is running:
Look forkansoin the output. -
Check correct URL: Make sure you're using
http://nothttps://: -
Try different browser: Clear cache or use incognito mode.
-
Wait for startup: The app needs a few seconds to start. Check logs:
Look for "NiceGUI is running on http://0.0.0.0:9525".
Google Sheets Connection Issues¶
"Invalid Credentials" Error¶
Symptom: Connection test fails with "Invalid credentials" message.
Solutions:
- Verify JSON structure:
- Must contain
"type": "service_account" -
Must have
client_email,private_key,project_id -
Check JSON formatting:
- No trailing commas
- No extra whitespace in keys
-
Copy the entire JSON file content
-
Regenerate credentials:
- Go to Google Cloud Console
- Select your service account
- Keys → Add Key → Create new key → JSON
- Use the new JSON file
"Spreadsheet Not Found" Error¶
Symptom: Credentials work but Kanso can't find your sheet.
Solutions:
- Share the spreadsheet:
- Open your Google Sheet
- Click "Share" button
- Add your service account email (from JSON:
client_email) -
Give "Viewer" or "Editor" permission
-
Use correct URL format:
-
Check sheet ID: The ID is the long string in the URL between
/d/and/edit.
"API Error" or Rate Limiting¶
Symptom: Dashboard shows API errors or data doesn't load.
Solutions:
-
Wait and retry: Google API has rate limits. Wait a few minutes.
-
Check API quotas:
- Go to Google Cloud Console
- APIs & Services → Google Sheets API → Quotas
-
Verify you haven't exceeded limits
-
Enable the Sheets API:
- APIs & Services → Library
- Search "Google Sheets API"
- Click "Enable"
Data Display Issues¶
Dashboard Shows No Data¶
Symptom: Dashboard loads but shows empty charts or "No data".
Solutions:
- Check sheet names: Kanso expects these exact worksheet names:
AssetsLiabilitiesExpenses-
Incomes -
Verify data format:
- First row must be headers
- Date column format:
YYYY-MM(e.g.,2024-01) -
Amount format: Currency symbol + number (e.g.,
€ 1.000,50) -
Refresh data manually:
- Go to Settings → Data tab
-
Click "Refresh Data"
-
Clear cache:
- Go to Settings → Data tab
- Update configuration to force cache refresh
Charts Not Rendering¶
Symptom: Charts show loading spinners indefinitely or are blank.
Solutions:
- Check browser console:
- Press F12 (Developer Tools)
-
Look for JavaScript errors in Console tab
-
Try different browser: Some older browsers may have compatibility issues.
-
Verify data types: Ensure amounts are numbers (not text).
-
Check date range: Make sure you have data for multiple months.
Wrong Currency Display¶
Symptom: Numbers show wrong currency symbol or format.
Solutions:
- Set currency in Settings:
- Go to Settings → Account tab
-
Select your preferred currency
-
Check data format in Google Sheets:
- Amounts should include currency symbol (e.g.,
€ 500) - Or be plain numbers if currency is set in Kanso
Performance Issues¶
Slow Loading Times¶
Symptom: Dashboard takes a long time to load.
Solutions:
-
Check network connection: Slow internet affects Google Sheets API calls.
-
Reduce data volume: Very large spreadsheets (thousands of rows) may be slow.
-
Use refresh wisely: Don't refresh data unnecessarily. Kanso caches data for 24 hours.
-
Check Docker resources:
If memory/CPU is maxed, allocate more resources to Docker.
Browser Freezing¶
Symptom: Browser becomes unresponsive when using Kanso.
Solutions:
-
Reduce data range: If you have many years of data, consider archiving old data.
-
Close other tabs: Free up browser memory.
-
Update browser: Use latest version of Chrome, Firefox, Safari, or Edge.
Settings Issues¶
Changes Not Saving¶
Symptom: Settings revert after page refresh.
Solutions:
- Check browser storage:
- Ensure cookies/localStorage are enabled
-
Try incognito mode to rule out extensions
-
Clear browser data:
- Clear cookies and site data for
localhost:9525 -
Refresh and reconfigure
-
Check volume permissions (Docker):
Ensure the directory is writable.
Theme Not Switching¶
Symptom: Dark/light mode toggle doesn't work.
Solutions:
-
Hard refresh: Press Ctrl+Shift+R (Cmd+Shift+R on Mac).
-
Clear localStorage:
- Open Developer Tools (F12)
- Application tab → Local Storage
- Clear all entries for
localhost:9525
Quick Add Issues¶
Expense Not Saving¶
Symptom: Quick Add form shows error when saving.
Solutions:
- Check all required fields:
- Merchant: Cannot be empty
- Amount: Must be a positive number
- Category: Must be selected
-
Type: Must be selected
-
Verify Google Sheets permissions:
- Service account needs "Editor" access to save data
-
"Viewer" access is read-only
-
Check sheet structure:
- Expenses sheet must exist with correct headers:
Date | Merchant | Amount | Category | Type
Getting Help¶
If you've tried these solutions and still have issues:
-
Check existing issues: GitHub Issues
-
Open a new issue with:
- Steps to reproduce
- Expected vs actual behavior
- Browser and OS version
-
Docker logs if applicable (
docker compose logs kanso) -
Ask in discussions: GitHub Discussions
Common Error Messages¶
| Error Message | Likely Cause | Solution |
|---|---|---|
| "Please add your Google credentials in Settings" | No credentials configured | Go to Settings → Data → Add credentials |
| "Invalid JSON" | Malformed credentials JSON | Copy entire JSON file, check for typos |
| "Invalid Google Sheets URL" | Wrong URL format | Use full spreadsheet URL with /d/SHEET_ID/ |
| "Could not connect to Google Sheets" | Network or API issue | Check internet, verify API is enabled |
| "Worksheet not found" | Wrong sheet name | Rename sheets to: Assets, Liabilities, Expenses, Incomes |
| "Could not read data" | Wrong data format | Check date and amount formats |
Still stuck? Don't hesitate to open an issue. We're here to help!