Skip to main content
How do I create a two-way sync?

Learn how to create double connections to sync data in the source and destination tab, in a bidirectional workflow.

Karoline Fernezlian avatar
Written by Karoline Fernezlian
Updated over a week ago

Sheetgo always sends data in one direction, from a source to a destination. This enables you to create a workflow with traceable data moving sequentially from A to B to C, and so on. If you modify the data in file B, you may not want those changes reflected in file A.

However, in some instances, you might want to add extra data using different files. To do that, it's possible to create more connections to transfer parts of the destination back to the source, in a "loop".

Note that even with a two-way sync, it is not possible to change the same data (e.g. column) in different spreadsheets.

Before starting a two-way workflow, decide on an order of data precedence.

This means planning which data has priority. Which data can overwrite other information?

Think about where each piece of data is generated. For instance, in a project management workflow, tasks are generated in the manager's spreadsheet, while status and comments are generated by task owners in their own spreadsheets.

Plan your workflow carefully when creating two-way syncs. Every time you update the connection, data will change in both the source and the destination file.

Prepare your database

  1. In a blank or existing spreadsheet, create a database tab.

  2. In the header row, give a name to every column that will be edited and managed in this file. Data from these columns will be transferred in the first connection step.

  3. Create a column containing a unique identifier for each row, like unique numbers, email addresses, or codes. These IDs will be used in the final step to make sure the correct data is synced on both ends.

Create the first connection

  1. Open Sheetgo and click New Workflow and then Create a connection.

    chrome_6xriLVdXU9
  2. Select the database you just organized. This is your source data. Choose the file and the correct tab. Click Continue.

  3. Under Send data to, select your destination file. This is where the data will be synced back to. Click Finish and save.

Now your source database is mirrored in your destination file.

Prepare the second data source

  1. Open the destination file and you'll find a green tab with a padlock symbol. Sheetgo is pulling data from your source file into this tab. In this article, let's call it "Tab A". As this is a connected tab, it should not be edited.

  2. Create a new tab. In this article, let's call it "Tab B"

  3. Transfer the data from Tab A to Tab B using formulas like ARRAY or QUERY. Read more about using data from a connected tab.

  4. Now that you can see your source data in Tab B, add new columns containing the data you want to send back to the source file.

Create a connection in the opposite direction

  1. In Sheetgo open the workflow from My workspace.

  2. From the Workflow view, click Create connection on the floating menu bar (top of the screen).

  3. Create a connection between the same files that you connected in the first step. This time the connection will run in the opposite direction, so the source file is now the destination file, and vice-versa.

  4. When you select the source, remember to select the tab with the new columns as the source tab (in our example, that's Tab B).

  5. Click Finish and Save to create the connection.

Data is now moving in both directions between the two files.

Use formulas to complete the loop

When you add data to Tab B it appears in your first spreadsheet, in a new connected tab. Use formulas to import that information into the correct row in your database tab:

  1. Open the database tab and add as many columns as you created in the destination file.

  2. In each column, use the VLOOKUP formula to look for the row's unique identifier in the connection tab to pull the corresponding value into that sheet.


Now the loop is complete: data from your database tab is sent to the destination tab, and the destination returns new columns back into the database.

Make sure you create the two connections as one workflow using the Sheetgo web app. This will ensure that the two-way connections run sequentially with data updated in both directions.

Advanced tip: run simple one-way connections before the two-way connections to back up previous data into an auxiliary sheet and consult the last changes.

Need more help?

Contact us via chat, on our email ([email protected]), or send us a ticket!

Visit our Community for help, tips, tricks, and feedback for Sheetgo.

Did this answer your question?