Connecting tables of information between docs in Coda
Lena Webster avatar
Written by Lena Webster
Updated over a week ago

Inside this article

What is Cross-doc

As you build up Coda docs, you might want to pull information from one doc into another. Enter Cross-doc! Some of our favorite ways to use Cross-doc are:

  • Pulling a product team roadmap into multiple project trackers

  • Pulling in customer data from a CRM into your own personal note-taking Coda doc

  • Distributing feedback for each of your direct reports from a base feedback doc 

How to use Cross-doc

If you have a table from another doc you'd like to pull into a new doc, start by clicking the Insert link in the top right of a doc.

The first time you use Cross-doc in a doc, you'll need to install it as a Pack:

  1. Click the Insert link in the upper righthand corner

  2. Select Packs

  3. Search for Cross-doc in the packs module

  4. Click Sign in to Install

Once you've installed the Cross-doc pack, you can select the doc > table from that doc that you'd like to pull in:

  1. Select the document from your available list of docs

  2. Select the table in that doc that you'd like to pull in, and drag and drop it to the location in your doc where you'd like it to appear.

  3. You can view and adjust your cross-doc table's settings by clicking Options > Cross-doc Table > Settings.  From there you can select your refresh schedule and the number of rows you'd like to sync:

4. You can also click Sync now to do an immediate sync.

Watch a video about Cross-doc

Cross-doc examples

Distribute Information

We want to make sure that every project tracker has access to our company OKRs. Rather than adding a link or having to update multiple docs. We'll just import our company OKR table into our project tracker.

Secure Data Sharing

If you have people who only need to see a certain part of a table, you can set this up with Cross-doc. 

  1. You'll start with your core table. Filter it for your criteria (e.g. Filtering a table to be just one person's performance review results)

  2. Pull the filtered view into the individual's doc

  3. Share the new doc with them. They will not have any access to the other data.

Note - this will also work for any hidden columns.


We have a base customer list, but I also have my own note-taking doc. I'll pull in the customer details so I can add a column with my own notes.

Important note: You may want to toggle on KEEP UN-SYNCED ROWS, under the sync table’s settings. That way, if the source table gets filtered, the new table with your notes will still keep all of the data inputted thus far.

Cross-doc FAQs

Can I update the data in the original table from this sync table?

Currently, sync tables are view-only. Adding columns or taking other action on your Cross-doc table won't make changes to the original table. We hope to support this functionality in the future.

In the meantime, it is possible to add/modify rows via Cross-doc actions if you're on the Team plan or above. You can learn more about Cross-doc actions here.

Will my hidden columns and rows come through?

No. Cross-doc takes a "what you see is what you get" approach. This helps you keep various elements private. 

Can I edit or delete the imported rows?

You won't be able to edit the imported values, but you CAN add new columns, group the data, and change the layout. These new columns will then ONLY be visible in your new doc. They will NOT be added to the original table.

Can I sync a sync table?

Yes! If you wanted to sync a table, add more annotations, then sync that somewhere else you could. You can even sync a Packs Table to another doc to hide your credentials.

Does it sync in real time?

At this time, instant or real-time syncs are not supported, but you can choose from manually, daily, or hourly refresh intervals to meet your needs.

Why don't new columns I add in my source table automatically appear in my sync table?

Whilst we will keep updating your row data we set up the columns and names when you first add the table. New columns can be added to your sync table by 'projecting' them from the main "Row" column. In other words, add a new column to your table, and add the formula =Row.[Column Name] to pull in the data from your source table. If you look at the formulas for the automatically synced columns you will see the same pattern.

Where are my button columns?

We don't currently support buttons from the source doc, so we remove them from your sync table.

What is the "Row" column?

The row column shows a list of "objects" representing each row in your source table. This is all of the data we sync through for the table. If you hover over a row object in this column, you'll find any additional columns that were added to your source table or deleted after the initial sync.

Note: You will only see the visible columns from the source table here. For data privacy we don't sync any hidden columns.

Most of my data is syncing fine but one column is blank - why is that?

This is most likely caused by renaming a column in the source table. Each column in the synced table used a formula and is based on the column name in the source table. When the name is changed, it breaks the formula. 

To fix it open the columns formula and replace the old column name with the new one.

Where have my conditional formats, groups, sortings and scales gone?

We only pull through the raw data from your original table. Anything that lives at the table level such as conditional formatting, groups, sorts and some column types (such as scales) will not appear. You can reformat all of this in the synced table to match the source.

Can other users see the same list of docs and tables to add when I add the pack?

The doc list and tables you see in the right hand menu are unique and private to you. No one else can see that list, they will only see the docs they have access to. So you can add a table from a private doc without giving any access to that document, other users you share your new document with can see this table fine. 

New columns were added to my sync table, but data is now missing from some rows in these columns - why is that?

The source table may have been filtered. When this occurs, the sync table can also be filtered, and when the filter is removed from the source table, you may see data missing from these rows in the sync table. If you do not want this to happen, toggle on KEEP UN-SYNCED ROWS, under the sync table’s settings.

Need some inspiration? Check out some published Docs featuring Cross Doc in our Gallery.

Did this answer your question?