Google Sheets

Google Sheets is a spreadsheet program included as part of the free, web-based Google Docs Editors suite.


Navigate to the spreadsheet you want to integrate into Budibase. Copy the URL.


Click the plus icon to add a datasource, and then select 'Google Sheets'.

You will then be prompted to sign-in with a Google account. This account should have permissions to view the spreadsheet you want to work with.

Allow Budibase to access your Google account.



If you are self-hosted, you will need to setup Google SSO

You will then be redirected to the Google sheets configuration page in Budibase. Enter a useful name for the spreadsheet and paste in the URL.

Finally click Fetch tables. In the context of Google Sheets, each sheet of your spreadsheet will be pulled in as a table:

As you can see, the primary key i.e. _id will map to the row number of the sheet.

Data view

Each sheet can be viewed and edited as a data table within Budibase.

You can edit columns, add rows, edit rows and delete rows. Changes made in Budibase will be reflected in that sheet of your Google spreadsheet.

In addition, Google Sheets data tables can utlise the row actions, such as Save Row and be used as a Form schema


The Google Sheets connector supports adding queries for when you might need to transform data or perform CRUD operations with specific bindings.

To add a query, select your Google spreadsheet datasource, and click Add query at the bottom of the configuration page.


Allows you to insert a row. You must provide the name of the sheet as well as a JSON payload to specify the column names and value.

The row number of the created entry will be returned on success.


Simply returns all the rows of a specified sheet. The transformer allows you to filter and map the data into the schema you desire.


Similar to Create in that you must provide a payload of data, however you must also provide a row index to be overwritten.


Row index

Row indexing starts from zero - the first row below the header row (usually the second row).


The same as Update, a sheet name and row index must be provided. That row will be deleted.

Rows will be shifted up after deletion.