Most "email analytics" demos reach straight for the open pixel. Drop a 1x1 transparent GIF in the body, watch the loads roll in, call it engagement. That worked in 2015. Today Apple's Mail Privacy Protection pre-fetches every image the instant a message hits the inbox, so a chunk of your "opens" are Apple's proxy warming a cache, not a human reading anything. Gmail proxies images too. Corporate gateways strip them. The number you get back is noise wearing a confidence interval.

There's a signal sitting right next to it that nobody can fake or block: did they reply? A reply is a human deciding your message was worth typing back to. It's lower-volume than an open and it's slower to arrive, but it's true. And if your sender is a Nylas Agent Account — a mailbox your agent owns, sends from, and receives into — reply rate is something you can actually compute, because every send and every inbound reply land in the same threaded data plane you already have read access to.

This post is the build. I work on the Nylas CLI, so the terminal commands below are the exact ones I reach for, and I'll show the raw HTTP next to each so you can wire it into whatever language your agent runs in.

What you're actually measuring