Every person in a People CSV needs a Unique ID, and no two people can share one. Rather than typing them, you can build them from the names you already have with a spreadsheet formula.
This example is for Google Sheets, where column C holds first names and column D holds last names:
=CONCAT(CONCAT(LOWER(C2),"-"),LOWER(D2))
It gives you IDs like ada-lovelace. Check the results before you import: if two people in your list share a name, the formula gives them the same ID, and you'll need to tell those two apart by hand.
Once you've imported, treat the IDs as fixed
This is the catch with building IDs from names: if you later correct a name — even fixing a typo — the formula produces a different ID, and Yapp has no way to tell that it's the same person. Two things happen on your next import:
Instead of updating the person you already have, the import adds a second one under the new ID. The original stays on your People page, with whatever sessions it was attached to.
Your schedule CSV still refers to the old ID in its People IDs columns. The import stops with "Could not find Person matching External ID", and won't run until those cells are updated too.
So use the formula to fill the column the first time, then paste the results in as plain text and delete the formula. The IDs then stay put while you correct names, and a name is only a label — nothing about your app depends on it matching the ID.
If you do need to change someone's Unique ID, change it everywhere at once: in the People file and in every People IDs cell of every schedule file that mentions them.
Related articles that might be helpful:
See how you can attach people to schedule items via the CSV import
Start with the guide to lists on schedule items

