Hi @Ben
If you navigate to a profile, just select "view messages" (top right of the profile page) and you can see all messages sent to that contact via campaigns and flows during a specific time period.
Regarding opt-outs receiving Klaviyo emails, did you import the opt-outs from CM into Klaviyo's suppression list? This is necessary to ensure Klaviyo won't allow you to send emails to those opt-outs.
During migration from CM to Klaviyo, did you import your opt-in contacts and select "Yes, update subscription status for all imported contacts to 'subscribed'" during the import process?
Even if a contact has Shopify ‘Accepts Marketing’ set to false or their Klaviyo profile states "never subscribed", they will still receive emails if they are in a list or segment you're sending to. The Klaviyo email status just shows that Klaviyo has no record of a contact having opted-in via a Klaviyo form or via an import.
It actually makes sense that Klaviyo doesn't use Shopify ‘Accepts Marketing’ as the "truth". Customers buy on Shopify and choose not to opt-in during checkout. Later on they opt-in to marketing via a Klaviyo form into a list. Then ‘Accepts Marketing’ = false and Email = "Subscribed"
However, once a contact unsubscribes via a Klaviyo flow or campaign (or you import an unsubscribe list), they will be supressed from all future emails.
You should also check under Settings >> Other, and ensure "When someone unsubscribes from a list, unsubscribe that person from all lists" is enabled which is recommended.
Being more specific about the differences between Shopify ‘Accepts Marketing’ and Klaviyo Email opt-in status and how to ensure they sync, I've just written about that here: https://community.klaviyo.com/lists-segments-and-profiles-35/email-never-subscribed-but-accept-marketing-true-8582
Hope that helps!
Andy