LogoLogo
WelcomeGet Started
  • What is Whalesync?
  • Start Here
    • Quick start
    • Video tutorials
  • Popular Syncs
    • Webflow + Airtable
    • HubSpot + Notion
    • Supabase + Airtable
    • Notion + Google Sheets
  • Connectors
    • Affinity
      • Authorize Affinity
      • Full records vs. shallow records
      • List-specific fields
      • Notes in Affinity
    • Airtable
      • Airtable view sync
      • Airtable API quota
    • Attio
    • Google Sheets
      • Formatting columns
      • Foreign keys
      • Multi-select fields
      • Avoid sort range
      • Whalesync ID column
    • HubSpot
      • Associations
      • Webhooks
      • Merging records
    • Memberstack
      • Authorize Memberstack
      • Memberstack custom fields
    • Notion
      • Notion page sync
    • Postgres
      • Authorize Postgres
        • AWS (RDS)
        • Basedash
        • DigitalOcean
        • Heroku
        • Neon
        • Render
        • Supabase
      • SQL scripts
      • Primary key snippets
      • Foreign key snippets
      • Terminology
      • Multiple foreign keys in a single field
      • How to sync Postgres views
    • Salesforce
    • Stripe
      • Authorize Stripe
    • Supabase
      • Adding default values to primary keys
      • How to sync Airtable linked records with Supabase foreign keys
      • Why does Whalesync create a database user?
      • Why do I need an ID column?
      • SQL scripts
      • Primary key snippets
      • Foreign key snippets
      • Terminology
      • Multiple foreign keys in a single field
      • How to sync Postgres views
    • Webflow
      • Supported fields - (AT x WF)
      • Webflow Memberships sync
      • Webflow status field
  • Previous connectors
    • Bubble
      • Authorize Bubble
    • Close
    • Copper
    • MS Dynamics CRM
    • Outreach
    • Pipedrive
      • Pipelines
    • Shopify
      • Authorize Shopify
      • Syncing images
      • Syncing variants
      • Tutorial videos
      • Theme Template field
    • WordPress.com
    • WordPress.org
      • Quick Start Guide: WordPress.org
      • Authorize WordPress.org
      • Advanced Custom Fields (ACF)
      • How to sync images
      • Supporting tables
      • Tutorial
      • WordPress status field
    • Zoho CRM
  • Features
    • Two-way sync
    • Issues
    • Operations
    • Record matching
    • Filters
    • Auto-create tables
    • Additional features
      • Automapping
      • Creating users via Whalesync
      • Delete protection
      • File hosting
      • HTML and Markdown field extensions
      • Relation fields
      • Sync preview
  • Resources
    • Support
      • Sync behavior questions
      • Common errors - Airtable
      • Common errors - Notion
      • Common errors - Postgres
      • Common errors - Webflow
      • FAQ
      • Field compatibility
      • How to get record IDs
      • How to change your sign-in
      • How to change your email
      • How to add additional email addresses
      • How to update your tax ID number
      • How to create a slug field in Airtable
      • Known issues
      • Multi-select to multi-reference
      • Transfer Webflow site to another account
      • Troubleshooting attachment fields
      • Webflow deprecating v1 APIs
    • Template Packs
  • YouTube
  • Security
  • Changelog
Powered by GitBook
On this page
  • What are reference fields?
  • How to sync reference fields with Whalesync
  • Things to keep in mind
  • Reference field best practices
  • Reference fields should only contain a small number of entries
  • Only sync one side of a mirrored reference field relationship

Was this helpful?

  1. Features
  2. Additional features

Relation fields

Support for reference fields (i.e. linked records) out-of-the-box

PreviousHTML and Markdown field extensionsNextSync preview

Last updated 1 month ago

Was this helpful?

What are reference fields?

When setting up a database, it's incredibly powerful to relate data across tables. Fields that enable these cross-table relations are typically called foreign keys. In the no-code world, each app has coined its own term for this:

  • Airtable =

  • HubSpot =

  • Notion =

  • Webflow =

How to sync reference fields with Whalesync

Things to keep in mind

You must map compatible reference fields

For example Airtable linked record fields must be mapped to Webflow reference fields

One of Whalesync's most popular features is the ability to sync reference fields out of the box. This means you can easily sync Airtable linked record fields with Webflow reference fields ✨.

When syncing reference fields you must also sync the table that is being referenced

Let's look at a Webflow example. Imagine you have a Blog Posts collection with a multi-reference field to an Authors collection.

In order for that Authors field to sync, you must make sure to map the Authors table in Whalesync as well.

Reference field best practices

Syncing reference fields with Whalesync is powerful, but there are some things to keep in mind when setting up your sync to provide the best experience.

Reference fields should only contain a small number of entries

Let's say you have two tables: "People" and "Companies". These tables are related in that people work for companies. You can choose to have a reference field on "People" that points to "Companies", or have a field on "Companies" that points to "People". Which should you do?

You should have a field on "People" that points to "Companies". Each person only works for one or a few companies, whereas a company may have hundreds or thousands of people working there.

Many apps, like Notion, only allow you to have a small number of reference field entries. If you sync a "companies" field in the "People" table, you'll be smooth sailing. If you sync a "people" field in the "Companies" table, it's very likely that you'll run into sync issues that will prevent your records from fully syncing over.

Only sync one side of a mirrored reference field relationship

Many apps, like Airtable and Notion, offer the ability to have reference fields that are mirrored between two tables:

  • "People" will have a "companies" field

  • "Companies" will have a "people" field

Changing a value in one field will automatically update the other.

This gets tricky from a data syncing perspective. It's best to only choose one of those fields to sync, not both.

This is for multiple reasons:

  • One side often has many more reference fields to sync which could go over field limits (e.g. Notion, see previous tip)

  • Every change in one field results in an equivalent change in the opposite field, resulting in unnecessary syncing work (and thus slower syncing)

Which side do you choose? It's best to choose the side that has fewer reference field entries. In the above example, the "companies" field of the "People" would have fewer entries because people only are associated with a small number of companies, whereas a company often has hundreds or thousands of people.

If you're using a flexible app like Airtable or Postgres and have a situation where two tables (A and B) have a relationship that will result in many reference field entries on both sides, then you can use a technique known as an . Instead of A pointing to B directly(or vice versa), an association table has entries that track each time a record from A needs to be linked to a record from B.

association table
linked record fields
association fields
relation fields
reference fields
A tutorial on how to sync reference fields (aka foreign keys) in Whalesync
Example of
Airtable linked record fields