Webinars
The Zoom attendee report is messy in three predictable ways: it throws Format_Invalid the moment you try to upload it, the same person is listed several times because they left and rejoined, and registrants and attendees come out on separate tabs. Clean those three things first and the import just works. Here is how to do it in a few minutes with Sift, free and in your browser, so the report is never uploaded.
Clean your attendee report in Sift →
You can do all of this by hand, and plenty of people do. You open the report, scroll for the repeated email addresses, and delete the rejoin rows one at a time, taking care not to delete the row you meant to keep. Then you pull up the registrant tab alongside the attendee tab and reconcile the two lists, matching people across both to work out who registered, who actually attended, and who did both. It is the same "marry the data" grind people describe when they move a GoToWebinar export into HubSpot: doable, but slow and easy to get wrong on a list of any real size.
GoToWebinar: the same steps apply. A GoToWebinar attendee export has the same shape of problems, repeated rows and a registrant-versus-attendee split, so load it in Sift, dedupe by email, tag the source, map, and export exactly as above.
Sift collapses the rejoin rows into one attendee record, but it does not sum the attendance minutes across those rows. If you need total watch time per person, calculate it in a spreadsheet before you load the file into Sift, or after you export, and bring that single number in as its own column. Sift is deterministic and does not aggregate, verify emails, or call your CRM's API; it cleans, dedupes, tags, maps, and exports.