The spreadsheet that quietly became the system

Anyone whose real operational record is a Google Sheet with six tabs, a tab everybody knows not to touch, and a column of dates that are secretly text.

  • One tab becomes one table; the first row becomes the field names
  • Every column arrives as text, because a spreadsheet has no column types — set each one once, and the values are kept
  • Bring several tabs across and link them afterwards — the relationships a sheet could only imply
  • You choose exactly which spreadsheets RowFold can see, through Google's own picker
  • RowFold never gets a list of your Drive: it can only open files you handed it
  • Importing again updates the same tables, matching each row by its first column — nothing writes back to the sheet
Start free 30 days free · no credit card
WHAT IT DOES

Exactly what connecting Google Sheets gives you

Brings data in

Pull Google Sheets into RowFold tables you own — filter them, report on them, link them to everything else in the workspace.

And it stays current: importing again updates the same tables, adding new records and updating changed ones, so links from your other tables hold. Keep in sync does that for you hourly or daily.

What it doesn't do: There are no automation steps that write back to Google Sheets. It has no say in what a booking page offers. An import only reads: nothing is written back to Google Sheets, a record deleted there stays here, and a sync runs hourly at most rather than the moment something changes. Anything else you have read about Google Sheets and RowFold, this page is the authority: it is generated from the connector's own code.

HOW TO DO IT

The jobs people connect Google Sheets for

I want to move a spreadsheet with several tabs into RowFold

One tab becomes one table and the first row becomes the field names, so ten minutes tidying the sheet in Google saves an hour of renaming afterwards. The import is one way and it never writes back, which means the sheet is safe while you try this.

  1. Tidy the header row in Google first Delete any title banner or blank line above the headers and make sure every column has a name. The first row is read as the field names, so a decorative row produces fields called Column B.
  2. Connect Google Sheets under Manage workspace, then Integrations Sign in with the account that can open the spreadsheet. RowFold asks for the narrowest access Google offers, which is permission to open files you hand over rather than permission to browse your Drive.
  3. Press Import data, then Choose spreadsheets This opens Google's own picker. Picking a file is what grants access to it, which is why a pasted link to a file you never picked will not open. You can select several at once.
  4. Pick the spreadsheet from the list that appears after the page reloads Each one becomes a set of tables, one per tab. The import runs in the background, so a large workbook does not hold the page open.
  5. Set each column's type before anybody starts typing Everything arrives as text, because a spreadsheet stores values without saying what they are. Change the date columns to Date and the amounts to Number or Currency, and the existing values are kept. Do it now: afterwards it is a type change plus whatever has been typed in the wrong shape since.

You'll know it worked: One new table per tab appears in the left rail. Tabs that are charts rather than grids, and empty tabs, are skipped and the import says so. Sort a date column: until you have set it to Date it will sort alphabetically, which is expected and is the reminder to set the type.

I want the tabs linked to each other, not just copied across

This is the part that makes the move worth doing. In a sheet, Orders and Customers are joined by a name typed the same way in both places and a VLOOKUP that breaks when somebody sorts a range. Here they can be joined properly, once, and the join then holds by itself.

  1. Import every related tab before linking anything A relation needs both tables to exist, and doing the imports together means you only make this decision once.
  2. Add a Relation field on the child table pointing at the parent On Orders, a field pointing at Customers. Put it on the side that has many rows per parent, which is nearly always the side your sheet repeated the customer name on.
  3. Match the existing rows up using the column the sheet was joining on The text column that held the customer name is what tells you which customer each order belongs to. Once the relation carries it, that text column has no job left.
  4. Replace the sheet's formulas with a rollup on the parent A total that lived in a SUMIF on the Customers tab becomes a rollup over the linked orders. It cannot go stale and it cannot be dragged down 380 rows of 400.

You'll know it worked: Open a customer record and look for the linked orders on it. If the list is empty for a customer you know has orders, the matching column had a spelling variant, which is exactly the problem the relation is there to end.

WHAT IT FIXES

The four things that actually go wrong

Tabs pretend to be tables and cannot behave like them. The Orders tab holds a customer name typed slightly differently in four rows, and nothing in the sheet can say that those four are the same customer, because a sheet has no idea what a customer is.

Each tab arrives as its own table, and from there you can link them for real. One customer record, four orders pointing at it, so a rename fixes every order at once and totals stop depending on spelling.

A spreadsheet cannot stop anybody doing anything. One person sorts a range without the column beside it, someone else pastes over a formula, and the version that was right existed for about an hour on Tuesday.

A field has a type and rules, and a record is a row that cannot be knocked out of alignment by a sort. Every change is attributed and reversible, so the question is no longer who broke it but simply when it changed.

Sharing a sheet is all or nothing at a level anybody notices. Hiding a column is a suggestion, protected ranges are brittle, and the usual answer is a second sheet maintained by copy and paste for the people who should not see the margins.

Permissions are per table and per field, so the same data serves everybody at the level they should see it. Nobody maintains a redacted copy, because there is nothing to copy.

Everything downstream is manual. A new row means somebody notices and does the next thing — send the email, tell the warehouse, chase the approval — and the process only exists in the head of whoever usually does it.

Rows are records, so they can trigger things. The chase, the notification and the status change run themselves, in a log you can read afterwards.

QUESTIONS

Before you start

Why do I pick files through a Google window instead of pasting a link?

Because RowFold deliberately asked for the narrowest access Google offers: permission to open files you explicitly hand over, rather than permission to see your Drive. That is a meaningfully smaller thing to grant, and the picker is how a file gets handed over. The trade is real — a pasted link to a file you never picked will not open, by design — and it is the right way round for a tool you are about to put your operational data into.

What happens to my formulas?

The values come across as text, not the formulas. That is usually the right outcome, because most spreadsheet formulas exist to fake things a database does properly: a lookup becomes a real link, a running total becomes a rollup that cannot go stale, and an IF chain becomes a formula field every row shares instead of one that was dragged down 400 rows and stopped at 380.

Does the table stay in step with the sheet afterwards?

It can, one way. Importing the spreadsheet again updates the tables it made, and Keep in sync does that hourly or daily. A sheet has no row IDs, so each row is matched by the value in its first column: change that cell and the row arrives as a new record, with the old one left where it was. Nothing writes back to Google, and an edit made here to a column the sheet fills is replaced on the next run, so the cleanest shape is still that the table becomes the original and the sheet stops being maintained.

My header row isn't the first row. Will that work?

The first row is read as the field names, so a sheet with a title banner or a blank line above the headers will produce fields called things like Column B. It is worth a minute in Google first: delete the decoration above the headers, and make sure each column actually has a name.

How big a sheet can it handle?

Up to 10,000 rows and 200 columns per tab. Past either limit the import stops at the cap and tells you so in its warnings, rather than quietly leaving the rest behind. For most operational sheets that is plenty; a tab genuinely larger than that is usually a log that wants splitting by year, or a sign the data should arrive another way, such as the API or a CSV import.

Can I import several tabs and keep them related?

Yes, and that is the part worth doing properly. Bring the tabs across, then add a relation between the tables — Orders to Customers, Line Items to Orders — and the joins your sheet was faking with VLOOKUP become real. Do it once and every later report gets it for free.

Describe yours and watch it build

There is no template to wait for. Type a sentence about what you run and RowFold assembles the tables, links, views and dashboard around it — then you change whatever does not fit.

Start free Free for 30 days. Then $29/month per editor, with unlimited free read-only viewers.