such wow doge
Published on
(updated )

Spreadsheet data enrichment: Google Sheets vs Shortcut vs Airtable

Authors

I have a list of names and email addresses. I want to enrich this data with job titles, organisation names, and job descriptions.

I tried Google Sheets, Shortcut, and Airtable. Airtable was the best.

Google Sheets can't do it

The Gemini sidebar and the AI function can't do web searches.

So—Google Sheets can't help me. 1

Shortcut was ok

I asked the chat:

I'd like to enrich this spreadsheet. Please: 1. Get the attendee names, then search the internet and find their job title, organisation name, and job description. 2. Add these as new columns.

It worked! It took about 3 minutes to run through 33 names and add the info.

Problems:

  • Shortcut can only import .xlsx files, not .csv. So I copy-pasted the data from Google Sheets.
  • Shortcut imitates the UI of Microsoft Excel. For a Google Sheets user, it's not immediately intuitive.
  • Shortcut is an early beta, not a mature product. I saw rough edges, and bugs.

Airtable was great

I gave Airtable chat the same prompt as Shortcut.

Initially, the agent tried searching the web itself for each contact, right within the chat. It made it through about five contacts and then crashed.

Then I asked:

Alright, is there a better way to approach this? Like, maybe using Airtable field agents or the AI within the fields? Could you maybe try writing a formula for the job title column that would search the internet and get the people's job titles?

It took about 30 seconds to create the Airtable AI fields, then another minute or so to run them. This got me all the data that I wanted.

Data accuracy

In 4/33 cases, Airtable hallucinated the job description. The hallucinated text was the same in all four cases, and taken from the correct org's website. The field prompt that Airtable generated had the obvious major problem of not telling the AI it can return "not found", or flag uncertainty:

You are an expert AI research assistant skilled in gathering and summarizing professional background information. Maintain a formal and concise tone when presenting findings.

Task description:

Search the internet for the most recent and relevant information about the attendee's current job description. Prioritize official company pages, professional networking sites, or reputable business directories. If conflicting information appears, use the most widely referenced and up-to-date details. Summarize the attendee's key roles, responsibilities, and area of expertise in 1-3 sentences.

Output format:

Produce a succinct paragraph of 1-3 sentences summarizing the attendee's current job description and primary responsibilities. Do not include headings, bullet points, links, or any extraneous information. If no reliable job description can be found, output: "Job description not found."

Example:

"Jane Doe is a Senior Product Manager responsible for overseeing product strategy and leading the development team at ExampleCorp. She focuses on launching new digital solutions and improving user engagement." (Real outputs should use the attendee’s actual name and organization, and will vary in length and detail per available information.)

Context and Data:

Attendee Name:

Organization Name:

Output:

I fixed it by editing the prompt.

In some cases, people had one job title on LinkedIn and one job title on their organization website. Shortcut and Airtable made different decisions about which one to prioritize. Ideally, the field prompts would have anticipated this edge case and told the AI to flag uncertainties like this.

So: next time, when I ask the Airtable assistant to write a retrieval prompt, I would explicitly say that the prompt should: (a) say "not found" if it can't find it and (b) add a "comments" column to flag uncertainty or other issues.

Aside from that, both Shortcut and Airtable gave mostly accurate data. They correctly marked a few contacts as "couldn't find the info".

Bottom line

I'll use Airtable for data enrichment going forward. It's very good, and very easy.

To improve accuracy: before running the prompts it generates, I'll copy-paste them into ChatGPT and ask it to check for issues. Then carefully read the final prompt myself.

Appendix 1. Example use cases for Airtable AI

Example use cases for Airtable AI

Footnotes

  1. Note that you can import data from a specific URL using the IMPORTHTML or IMPORTXML functions.