CollabPortals

Setting Up Your Airtable Base

How to structure your Airtable base so CollabPortals can connect users to their data. Covers user tables, linked records, and common base patterns.

How CollabPortals Connects Users to Data

CollabPortals needs to know two things about your Airtable base:

  1. Who is this user? It matches the portal user's email to a record in your "user table."
  2. What data belongs to them? It follows linked record fields from other tables back to that user record.

If your base doesn't have these two pieces in place, users will be able to log in but won't see any data. This guide walks through exactly how to set things up.

The User Table

Every CollabPortals portal needs a user table: a table where each row represents one person who will use the portal. This table must have an email field.

Common names for this table: "Contacts", "Clients", "Users", "Team Members", "Students", "Vendors."

At minimum, the user table needs:

FieldTypePurpose
NameSingle line textDisplay name for the user
EmailEmailHow CollabPortals identifies the user (must be unique per person)

You can have as many other fields as you like on the user table (phone, company, role, notes, etc.). The email field is the only one CollabPortals requires.

If you already have a table with one row per person and an email column, that's your user table. You don't need to create a new one.

Linking Data to Users

Here's the part that trips people up: for CollabPortals to filter a table's records per user, those records need to be linked back to the user table.

In Airtable, this means adding a "Link to another record" field (the multipleRecordLinks field type) that points to your user table. Each record then gets linked to the user it belongs to.

This is the mechanism for per-user filtering, but it is not the only way a table can appear in a portal. A table with no link to the user table can still be shown to everyone who can view it, or nested inside a parent record as a related tab. The sections below cover when to use each.

Example: A Project Management Base

Say you have three tables:

TableWhat it stores
ContactsOne row per person (the user table)
ProjectsClient projects
TasksIndividual tasks within projects

For a portal user to see their projects, the Projects table needs a linked record field pointing to Contacts:

Projects Table
Project NameClient (linked to Contacts)Status
Website RedesignAlice SmithIn Progress
Brand StrategyAlice SmithComplete
Mobile AppBob JonesIn Progress

When Alice logs in to the portal, CollabPortals sees that her email matches "Alice Smith" in Contacts, then shows her only the projects linked to her record: "Website Redesign" and "Brand Strategy." She never sees Bob's "Mobile App."

What About Tasks?

Tasks usually belong to a project rather than to a person directly. You have two ways to surface them, and the right one depends on how you want users to reach them.

Option 1: Show tasks inside each project. This is the natural fit for one-to-many data: tasks under a project, line items under an order, reports under a property. If your Tasks table links to Projects, you can show a project's tasks as a tab on that project's record. A user opens a project in the portal and finds a "Tasks" tab next to the details, scoped to just that project's tasks. The Tasks table does not need its own link to the user table here: it inherits its scope from the project the user opened. Turn this on with the Show as related tab option on the Project's Tasks field in your portal's table settings.

Option 2: Give tasks their own direct link. If you want a standalone Tasks page in the sidebar that filters per user, where each user sees only their own tasks across every project, the Tasks table needs its own linked record field pointing to Contacts. For a standalone page's per-user filter, CollabPortals does not follow chains through intermediate tables, so a Tasks-to-Projects-to-Contacts chain alone does not scope a standalone Tasks page.

Tasks Table
Task NameProject (linked to Projects)Contact (linked to Contacts)Due Date
Design homepageWebsite RedesignAlice Smith2026-04-01
Write copyBrand StrategyAlice Smith2026-04-15
Build APIMobile AppBob Jones2026-03-30

Related tabs follow the parent's link for you, so child tables like Tasks or Order Lines rarely need their own link to the user table. Reach for a direct link when you want a standalone, per-user page in the sidebar.

Common Base Patterns

The most straightforward setup. Every table has its own linked record field pointing to the user table.

  • Contacts (user table)
    • Projects links to Contacts
    • Invoices links to Contacts
    • Documents links to Contacts

Tables can link to each other for your own workflows (Tasks to Projects, for example), but every table that should filter by user still needs its own direct link to the user table.

  • Contacts (user table)
    • Projects links to Contacts
    • Tasks links to Contacts (and also links to Projects for your own use)
    • Invoices links to Contacts
    • Notes links to Contacts (and also links to Projects for your own use)

The links between tables (Tasks to Projects, Notes to Projects) are useful in Airtable but are not what CollabPortals uses for filtering. The links to Contacts are what matter.

A table with no link to the user table can still appear in a portal, in one of two ways:

  • As a standalone page that shows everyone the same records. Turn the table on and every user who can view it sees every record. This is fine for reference tables (like a "Categories" or "Statuses" table) that everyone should see. There is no per-user filtering, because there is no link to filter on.
  • As a related tab nested inside a parent record. The tab shows only the children of the record the user opened (a project's tasks, an order's line items), following the parent's link. The child table needs no link of its own to the user table.

If you turn a table on as a standalone page without a link to the user table, make sure it doesn't contain sensitive data. Every portal user who can view it will see every record. A related tab is the safer choice when records belong to a specific parent, since it only ever shows that parent's children.

If your base doesn't have the right links yet, here's how to add them:

  1. 1

    Open the table that needs linking

    Go to the table where records should be filtered per user (e.g., Projects).

  2. 2

    Add a Link to another record field

    Click the "+" button to add a new field. Choose "Link to another record" as the field type. Select your user table (e.g., Contacts) as the target.

  3. 3

    Link existing records

    Go through your existing records and link each one to the correct user. Click the cell in the new linked record column and select the right person.

  4. 4

    Link new records going forward

    When adding new records in Airtable, always link them to the appropriate user. CollabPortals auto-links records created through the portal, but records created directly in Airtable need to be linked manually.

Checklist Before Creating Your Portal

Before you create your portal, confirm:

  • You have a table with one row per person and an email field (your user table)
  • Every person who needs portal access has a record in the user table with their email address
  • Every table that needs a standalone, per-user page has its own linked record field pointing directly to the user table
  • Child tables you'd rather show inside a parent record (tasks under a project, line items under an order) link to that parent, ready to surface as a related tab
  • Existing records are linked to the correct users
  • Reference tables and standalone pages that everyone should see don't contain sensitive data

Common Mistakes

"My users can log in but see no data" The most common cause: the data tables aren't linked to the user table. Add a linked record field and connect the records.

"Users see all records, not just their own" The linked record field exists but the records aren't actually linked to anyone. Open Airtable and check that each record has a value in the linked record column.

"I added a linked record field but it points to the wrong table" The linked record field must point to the user table you selected when creating the portal. If your user table is "Contacts," the link should go to "Contacts," not to some other table.

"Some tables filter correctly but others don't" Each table needs its own direct link to the user table. If Projects filters correctly but Tasks doesn't, check that Tasks has its own "Link to another record" field pointing to Contacts. Linking Tasks to Projects is not enough.

Next Steps