A row that matched an existing contact at the last moment was counted as added. The total was right but the split between added and updated was off. Those rows now count as updated.
Setting up auto-forwarding from Gmail, Google Workspace or Yahoo to your lead email address now works on your own — the confirmation link the provider mails to that address is shown in Settings instead of disappearing, and it is no longer turned into a contact.
When a visitor submitted a lead form or navigated away, the pixel's identify and event calls could be cancelled by the browser mid-flight, so visitors were never linked to a contact and property views never reached the lead profile. Those calls now use the same resilient delivery method that form captures already used.
Inbound calls to a team inbox number never produced a recording, transcript, or AI summary, and an answered call could still show as a missed call in the Inbox. Both are fixed, and the call now shows which agent picked up.
A workflow that runs on both People and Contracts receives one or the other on each run. A step that could only ever apply to the other kind is now skipped and the run carries on to the end, instead of failing the whole run at that step and locking the record out of the automation.
Two rows naming two different people with different email addresses used to import as one contact when they shared a household phone number, and re-importing the missing person merged them back together. They now import as two contacts.
A row that listed the same phone number in Phone and Phone 2 was imported with only its name, email and first phone, and reported as added. The repeat is now ignored and the rest of the row imports. A row that cannot be saved now appears in the error list instead of as a partial add.