Can I set custom IDs as primary identifiers in Airtable?

I’m working with an Airtable base that has company names and their corresponding IDs. Right now, it looks like this:

Name    CustomID
Acme    111
Biz     222
Corp    333

The problem is Airtable automatically adds a ‘Record ID’ field as the unique identifier. But I want to use my existing CustomID field for this purpose. I’ve tried a few things, but I can’t seem to make it work without messing up the CustomID field.

Does anyone know if it’s possible to use an existing field as the primary identifier in Airtable? If so, how can I do this without losing or overwriting my current data? I’d really appreciate any tips or workarounds for this issue!

As someone who’s worked extensively with Airtable, I can say that unfortunately, you can’t directly set a custom field as the primary identifier. Airtable’s Record ID is a system-generated field that can’t be replaced or overwritten.

However, there’s a workaround I’ve used successfully. You can create a formula field that combines your CustomID with other unique information. For example:

{CustomID} & “-” & RECORD_ID()

This creates a unique identifier that starts with your CustomID but ensures uniqueness by appending Airtable’s Record ID. You can then use this field for lookups and relationships.

Another option is to use Airtable’s ‘Find duplicate values’ feature to ensure your CustomID remains unique. This way, you can confidently use it as a de facto primary key in most situations, even if it’s not the system’s official primary identifier.

Remember, while these approaches work well in practice, they don’t change Airtable’s underlying structure. Always keep this in mind when integrating with other systems or exporting data.

While Airtable doesn’t allow custom fields as primary identifiers, I’ve found a practical solution. Create a new ‘Autonumber’ field and set it to start from your highest existing CustomID. This way, new entries will automatically get unique IDs in your preferred format.

For existing records, you can manually update this new field to match your CustomIDs. Once done, you can hide the original CustomID field and use the Autonumber field instead. This maintains your desired ID structure while leveraging Airtable’s built-in functionality.

Keep in mind that Airtable’s Record ID will still exist in the background, but for all practical purposes, your new Autonumber field will serve as the primary identifier within your base. This approach has worked well for me in similar situations, offering a balance between customization and Airtable’s limitations.

hey, i’ve faced this too. airtable’s stubborn bout record IDs, but here’s a trick: use CONCATENATE() to mix ur CustomID with some unique stuff like creation date. like: CONCATENATE({CustomID},‘-’,CREATED_TIME())

aint perfect, but gets u close to wat u want. just remember airtable’s still doin its thing behind the scenes