Notion and Google Sheets, in sync both ways.
Twinrow keeps a Notion database and a sheet tab in step. Edit a row in Sheets and the page changes in Notion; change a page in Notion and the row follows. When both sides changed the same cell, nothing gets overwritten behind your back: you see both values and decide.
Email us to get TwinrowFree trial: 14 days or 1,000 row changes, whichever comes first. No card needed. Then $15/month or $144/year. You are only charged if you choose a plan in checkout.
What it does
Two-way, per column
Every column is two-way, Notion to Sheets only, or Sheets to Notion only. New rows become pages and new pages become rows.
Safe conflict handling
Each cell is compared with its last synced value, so Twinrow knows which side changed. A cell changed on both sides goes to the sync log, with both values and both edit times.
Every property type
Text, numbers, selects, statuses, multi-selects, dates and ranges, checkboxes, URLs, emails and phones sync both ways. Formulas, rollups, relations, people and files come in as readable text.
Automatic
Sync every hour even with the spreadsheet closed, and send sheet edits to Notion as you type. Or click Sync now.
Many databases
One tab per database, as many tabs as you like, on every plan. Link an existing sheet by matching titles so you don't get duplicates.
Your sheet stays yours
Formula cells are never overwritten, rows are never deleted, and a page only goes to Notion's trash when you type delete in its status cell.
How to sync a Notion database with Google Sheets
- Install Twinrow, open a spreadsheet and choose Extensions, Twinrow, Open Twinrow.
- Click Connect Notion and choose the databases Twinrow may use (or paste your own integration secret).
- In Setup, pick the database, choose the properties and the direction for each, and click Save and sync.
- Edit anywhere. Click Sync now, or turn on hourly sync and instant sheet edits in Automate.
How conflicts work
At every sync Twinrow remembers, per cell, the value both sides agreed on. Next time it checks each side against that value:
- Changed only in the sheet: sent to Notion. Changed only in Notion: written to the sheet.
- Changed on both sides to the same value: nothing to do.
- Changed on both sides to different values: a conflict. With the default rule, neither side changes; the row says Conflict and the Twinrow sync log tab lists the column, both values, the sheet edit time and Notion's last edited time. Pick Keep sheet value or Keep Notion value and sync. If either value changes again before you pick, your pick is not applied to the new values; a new entry appears instead.
- Prefer a rule? Choose Notion wins, sheet wins, or newest edit wins. Notion records edit times to the minute, so newest edit wins still asks you when the two edits are less than a minute apart. Every value a rule replaces is written to the log.
Compared with other Notion and Sheets tools
| Twinrow | Typical alternatives | |
|---|---|---|
| Free use before paying | 14 days or 1,000 row changes, shown in the sidebar | Listed as free, then a paywall after 24 hours |
| Both sides edited | Logged, you pick, or your rule decides and the old value is logged | Last write wins, silently |
| Databases per plan | Unlimited on every plan | 3 on the entry plan |
| Setup help | Step-by-step in the sidebar, the Connections fix shown wherever Notion says no | "No tutorial" is a common review |
| Rows you deleted | Stay deleted; Notion pages are never removed unless you ask | Varies |
Pricing
- Free trial: 14 days or 1,000 row changes, whichever comes first. No card needed. Previews, unchanged rows and errors never count; pages added from Notion count 1 per 25.
- Every plan includes unlimited databases, tabs and rows, hourly sync, instant sheet edits and the sync log.
- Renewal: plans renew automatically at the same price until you cancel. Team plans need a company email domain (not gmail.com or other public providers).
- Cancel: in Extensions, Twinrow, Plans and billing, Manage billing. You keep access until the end of the period you paid for.
- UK and EU customers have a 14-day right to cancel a purchase for a full refund. Email hello@greatwork.company within 14 days of buying.
- Prices are in US dollars. Payments are processed by Stripe; we never see your card.
Help
My database isn't in the list
In Notion, open the database, click the ••• menu, choose Connections and add Twinrow (or your integration). Then reopen Setup, or use "Not listed? Paste its link".
A row says "Not sent"
Notion refused that value, for example a status that isn't one of the property's options, or text in a number column. Fix the cell and sync again; nothing else in the row was lost.
How fast do Notion edits arrive?
Google lets add-ons run on a schedule at most once an hour, so automatic sync is hourly. Click Sync now for an immediate update. Sheet edits can go to Notion as you type.
How do I remove a page?
Type delete in the row's Twinrow status cell and sync. The page moves to Notion's trash, where it stays restorable for 30 days. Type restore to bring it back. Deleting a row in the sheet never deletes anything in Notion.
Privacy
Twinrow reads and writes only the spreadsheets you use it in. Row data goes from Google directly to Notion; Great Work's servers never receive it. Our billing service sees your Google account email and a count of row changes. Details: privacy for this add-on.
Support
Email hello@greatwork.company. A person answers within one business day.