Blog

Airtable Lookups: How to Remove Duplicates (And Keep Your Links)

FE
Filla EditorialbeginnerOct 27, 2025

The Problem: Duplicate Values in Lookup Fields

Lookup fields in Airtable are great for surfacing related information, but they can show the same linked value multiple times. Users often expect a simple "show unique" toggle, but it doesn't exist (yet). This guide explains how to deduplicate values in practice and what to do if you need to keep linkability.


Key Concepts

  • Lookup fields render values pulled through a linked relationship and intentionally allow duplicates.
  • Rollup fields can apply functions like ARRAYUNIQUE() to aggregate and deduplicate—returning text, not links.
  • Formulas can transform lookup arrays but cannot turn text back into clickable linked records.

Implication: If you only need a clean text list, use Rollup/Formula. If you need clickable unique links, use a data or automation workaround.


Option A — Rollup with ARRAYUNIQUE (Text Output)

If text is enough, use a Rollup that points to a field you want to dedupe and apply ARRAYUNIQUE(values).

ARRAYUNIQUE(values)

To control separators, wrap with ARRAYJOIN:

ARRAYJOIN(ARRAYUNIQUE(values), ", ")

This yields a deduplicated, readable list—but it's no longer clickable links.


Option B — Helper Field + Rollup (Reliable Deduping)

Some users notice ARRAYUNIQUE() behaves more reliably when used on plain text. Create a small helper field in the linked table and roll that up.

Example (Recipes → Ingredients → Type):

  1. In Ingredients, add a Formula {Type Name} that equals the name of the linked {Type} (or a Lookup to {Type}.{Name} that resolves to text).
  2. In Recipes, Rollup the {Type Name} with:
ARRAYJOIN(ARRAYUNIQUE(values), ", ")

Result: "Dairy, Bread, Vegetable, Meat" instead of repeated entries.


Option C — Keep Links Unique (Workarounds)

If you must keep them as clickable links, you need to curate a unique set in a linked-record field. Two common approaches:

1) Automation (Make/Zapier or Airtable automation)

  • Trigger on change to the source links.
  • Compute the unique set (use a script step or a Make/Zapier "remove duplicates" action).
  • Update a dedicated linked-record field with the unique record IDs.

Pros: stays in Airtable; links remain clickable.
Cons: needs an automation and a second field.

2) Junction Table for Unique Membership

  • Create a join table (e.g., Recipe ↔ Type) where each record is a unique pair.
  • Link your main record to this junction, and Rollup/Lookup via the junction.

Pros: fully normalized; no duplicates by design.
Cons: extra table and relationships; slightly more setup.


Quick Reference

Goal Recommended approach
Clean readable list Rollup + ARRAYUNIQUE(values) ± ARRAYJOIN
Unique but clickable links Automation that writes a deduped set into a linked field
Strict uniqueness by design Junction table (unique pairs)

Example Formulas and Patterns

Deduping a lookup into a comma-separated list:

ARRAYJOIN(ARRAYUNIQUE(values), ", ")

Building a helper key (in the linked table) to roll up confidently as text:

CONCATENATE(Name)

Then roll up {Helper Name} with ARRAYUNIQUE.


Opinionated Take

An "Only display unique linked records" toggle in Lookup settings would fit many real-world cases and appears frequently in community requests. Until then, the combination of helper text + rollup or a small automation covers most needs.


Further Reading


Airtable Lookups: How to Remove Duplicates (And Keep Your Links)