A spreadsheet without the spreadsheet.
Your bank data in a grid you can edit, inside BankSync. Pick a table as the destination and the columns arrive typed and mapped. Link rows, write formulas, chart the result.
A table, start to finish.
One click to a table, then edit it like a sheet.
Somewhere for your data to land, on day one.
Other destinations need an account to authorise or a sheet to lay out first. A table is already there, and one feed can still write to Sheets, Notion, Airtable or Excel as well.
Editable, typed, and yours to shape
Edit inline. No schema screen to visit first.
Columns that already fit
Pick a table as the destination; columns arrive typed and mapped.
Edit any cell inline
Fix a category or merchant name in the cell, not in a rule.
Types that hold
Numbers stay numbers, dates stay dates, currency formats itself.
Your own columns
Text, select, status, rating, user and auto number beside synced fields.
Files on a row
Up to ten files per cell, in the order you set.
Sort, filter, restore
Column filters, sorting, CSV export, and a 30-day trash.
Bring your records and their receipts together
Match CSV columns to a table, review the rows, attach their files.
Connect records, then calculate from them
Create a relation, link rows, add a rollup and a formula, watch them recalculate.
Link a row, then let it do the maths
A relation points rows at rows. Lookup, rollup, count and formula read across it.
Link rows to rows
A transaction to a vendor, an invoice to a client, a row to a row.
Lookup
Show a field from the linked rows without copying it.
Rollup
31 summaries across linked rows: sum, median, earliest, count per option.
Count, with a condition
Count open invoices, not all invoices. Lookups and rollups take conditions too.
Formulas
94 functions over this row and the rows it links to.
Computed, and still sortable
Results are stored on the row: sort, filter and chart them.
Limits are refusals, not silent truncation: ten files a cell, a hundred links a cell, five hops of calculation. The function list and the rollup list are in the docs.
From connected account to a table you can edit
- 1
Pick BankSync Table
One click in the destinations tab. Nothing to connect or prepare.
- 2
Sync, then edit
Rows land on your schedule. Fix a cell, add a column, attach a file.
SortFilterAttach filesExport CSVTrash & restore - 3
Link it, then calculate
Point rows at another table, then look up, roll up or write a formula.
RelationLookupRollupCountFormula - 4
Chart it, ask it, or call it
The same rows feed dashboards, Ask Penny, the REST API and MCP.
One primitive, plenty of jobs
A table is a destination, a source, and an API resource at the same time.
Your own chart of accounts
Keep categories in a table and point the AI categorizer at it.
Vendors, with their totals
One row per supplier, spend rolled up beside the name.
A source for dashboards
Any table is a widget source, computed columns included.
A register that stays current
Holdings, loans or balances kept in one table across feeds.
Storage for your own app
Read and write rows over the REST API; no database to run.
Something to ask Penny about
She reads your tables and answers with a chart inline.
Stored because you asked for it
BankSync passes data through by default; only feeds you point at a table store rows. They never train models, and deleting the table removes them and their files.
Frequently asked questions
What are BankSync Tables?
A stored dataset in your workspace, shown as an editable grid. Send a feed into it, import a CSV or build it by hand; link rows across tables and calculate with lookup, rollup, count and formula columns. The same rows feed dashboards, Ask Penny, the REST API and MCP.
How is a table different from syncing to Google Sheets or Notion?
Nothing to connect or prepare: the table is created with the right columns and the mapping done. Sheets, Notion, Airtable and Excel still work, and one feed can write to both.
Can I edit synced rows, and will my edits survive the next sync?
Yes. Columns you add are never touched by a sync. In feed-owned columns the latest write wins, and Memory re-applies the corrections it learned from you on the next sync.
Can I build a table that has nothing to do with a bank feed?
Yes. Create a free-form table, choose the columns, add rows by hand or from a CSV. A common one is a chart of accounts that the AI categorizer and lookup enrichments read from.
Can rows in one table link to rows in another?
Yes. A relation column links a row to up to a hundred rows in another table or the same one, with an optional link back. Lookup, rollup and count columns then read across the link, each with an optional condition.
Can I write formulas?
Yes. A formula column uses 94 functions over its row and the rows it links to, with a searchable editor that previews against real rows. Any lookup, rollup or count can be opened as a formula; today() recalculates daily and there is no now().
Are calculated columns live, and what happens when something breaks?
Results are stored on the row, so you sort, filter, chart and read them over the API like any column. A pending cell says "Recalculating", errors print as #DIV/0!, #REF!, #TYPE! or #DEPTH!, and deleting a field a calculation reads is refused until you see what depends on it.
Where is the data stored, and is it used to train AI models?
Rows are stored inside BankSync, which is why storing is a per-feed choice rather than the default. They are never used to train models, and deleting the table, workspace or account removes them and their files.
Who in my workspace can see a table?
Tables follow your workspace roles. There are no per-table share links, per-table permissions or public forms.
Can I import a CSV, or attach files to a row?
Yes to both. CSV import proposes column types from your header row, and re-importing into a table with key fields set updates matching rows instead of duplicating them. An attachment cell holds up to ten files of 25 MB each.
How many tables and rows do I get?
Every plan includes tables: one table and 5,000 rows on Free, up to 100 tables and 2 million rows on Business, unlimited on Enterprise. The pricing page lists table, row and attachment limits per plan.
Can I read and write a table from my own code or an AI agent?
Yes. Tables are a REST API resource with read and write access under scoped keys, and the MCP server exposes the same operations to agents. A table works as a small hosted datastore for a script or app.
Connect a bank, get a table
Your transactions land in a grid you can edit, chart and query.


