Engagement signals
The report card inboxes appear to keep on how recipients treat your mail, weighted by a formula the providers have never published.
See it
What it is
Mailbox providers keep some kind of running report card on how recipients treat your mail. The exact inputs and their weights are not published, so the usual list is informed inference, not a spec sheet. Likely positive: replying, clicking, starring, moving a message out of spam, adding you to contacts. Likely negative: deleting without reading, months of no interaction, hitting 'report spam'. Recency is widely believed to count for more than ancient history, and scoring appears to happen per sending domain and per recipient, but nobody outside Gmail or Outlook can confirm the formula, and it differs by provider.
Reach for the concept whenever placement drops without any authentication change. Nothing is broken in DNS: you have simply been mailing people who stopped caring. The fix is segmentation, sending your best content to your most active people first, and cutting the dead weight instead of blasting everyone equally.
Gotcha: you cannot see most of this. Deletes, archives, and reads happen inside the mailbox and are never reported to senders, and the open rate on your dashboard is a pixel fetch, not a human, since Apple Mail Privacy Protection prefetches images for a large share of recipients. Build your own model out of what you can actually observe: replies, clicks, purchases, logins, complaints, and unsubscribes.
Ask AI for it
Write me an engagement scoring job for my email list that uses only sender-observable events. Score the last 90 days per subscriber from verified replies, clicks, purchases, and product logins, plus opens treated as a weak signal and marked when they come from a privacy proxy like Apple Mail Privacy Protection. A spam complaint means instant suppression. Do not include any signal we cannot see, such as 'deleted without opening': model absence of activity as time decay on the score instead of inventing a negative event. Bucket the result into active, cooling, and dormant, and give me a send rule per bucket: active gets the full cadence, cooling gets half, dormant gets one win-back and then goes quiet. Output the SQL plus a scheduled job that refreshes the buckets nightly.