Log expenses to your Sheet, by chatting
No more end-of-month catch-up. Tell Kin you just spent $4 on coffee. It appends a row to your tracker and moves on.
The reason expense trackers fail isn't that they're hard. It's the activation energy: open the sheet, find the right row, type the date, type the category, type the amount.
If you can text your assistant in three words and have it logged, you'll actually do it.
The flow
You have a Google Sheet — let's say it's called "Expenses 2026" with columns: Date | Category | Description | Amount.
You: Log $4.50 for coffee at Blue Bottle this morning.
Kin: Appended to Expenses 2026: 2026-05-09 | Food | Blue Bottle coffee | $4.50.
✓ Updated range Sheet1!A234:D234.
That's the whole interaction. Kin knew:
- Today's date in your timezone
- "Coffee at Blue Bottle" → Food category (you taught it that earlier; it remembered)
- $4.50 is the amount
- Your sheet's structure (column order)
How it learns your sheet
The first time you reference a sheet, Kin asks Google Sheets for the tab structure and current header row. It remembers the column layout in long-term memory:
Memory: User's Expenses 2026 sheet has columns: Date, Category, Description, Amount in Sheet1. User categorizes "coffee" / "lunch" / "groceries" as Food.
From that point on, "log $20 groceries" → append_sheet_row with the right shape.
Beyond expenses
The same pattern works for any append-style spreadsheet workflow:
- Time tracking: "Log 90 minutes on the auth redesign for Acme."
- Mood / habit tracking: "Mood: 7. Slept 6h. Workout: yes."
- CRM lead capture: "Add lead: Priya Mehta, priya@xyz.com, mentioned at the conference."
- Daily journal: "Reflection for today: I shipped the integration but the meeting on pricing was a wash."
Reading back
Kin can also pull data out:
You: What did I spend on coffee this month?
Kin:
read_google_sheeton Expenses 2026 range Sheet1!A2:D300, filtered for Category = Food and items containing "coffee" — total: $47.50 across 12 entries.
Other write operations available
If you ask, Kin can also:
- Create a new spreadsheet with named tabs
- Add a new tab to an existing one
- Update specific cells ("set B7 to 5000")
- Clear a range
- Replace values via find-and-replace
Every write quotes the change back before applying. Confirm with "yes" or "make B7 say 5500 instead" and Kin adjusts.