Overview
EuroMail records what happens to every email and exposes it through the
/v1/analytics endpoints and the dashboard. Use it to answer the questions that
matter: are my emails landing, are people engaging, and is anything hurting my
reputation?
For the full endpoint reference, see the Analytics API reference.
In the dashboard
Analytics in the dashboard shows the same figures on one page, for 7, 30 or 90 days or a custom range, each compared with the period before:
- Delivery rate at the top, with the number of sends it is counted from. Sends still waiting to be sent or retried are listed apart and are not in the rate until they reach an outcome.
- Outcome ledger: delivered, bounced, failed, not sent, complaints, opened, clicked and unsubscribed, each with its count, rate and change.
- Delivered per day against the previous period, with bounces on their own scale. A day opens that day's emails.
- Recipient domains with their own delivery and bounce rates. A domain opens the emails sent to it, CC and BCC included.
- Engagement and tags. A tag lists the links clicked in its emails, without query strings.
- By day, one row per day, and Export CSV.
Every recipient counts, CC and BCC included. A figure that could not be loaded is shown as unavailable, never as zero. If the period has no sends, the page names the date of your last send and offers a range that includes it.
The headline numbers
curl "https://api.euromail.dev/v1/analytics/overview" \
-H "Authorization: Bearer em_live_your_key_here"
The overview returns counts and rates for a period: sent, delivered, opened, clicked, bounced, and complained. Delivery and bounce rates share one denominator: every send that reached an outcome, meaning delivered, bounced, or failed on our side. A message refused during the SMTP session is a bounce and counts against the delivery rate. The two rates to watch closest are:
- Bounce rate. Keep it low (a few percent). A rising bounce rate means list hygiene problems; see Suppressions.
- Complaint rate. Keep it well under 0.1%. Complaints are the fastest way to lose inbox placement.
Opens fetched by a mail provider
Gmail, Yahoo and Outlook load images through their own servers. Some of those fetches happen when a person opens the message, others before anyone has read it, and the request looks the same either way. So euromail.dev doesn't count them as opens.
It still records them. The overview reports the count as total_proxy_opens,
and each fetch shows up in the email's events as opened_proxy. A proxy fetch
never sends an opened webhook.
An open rate near zero next to a high total_proxy_opens usually doesn't mean
people are ignoring you. It means most of them read mail through a provider that
hides who opened what. For those recipients, watch clicks instead.
Trends over time
curl "https://api.euromail.dev/v1/analytics/timeseries?interval=day" \
-H "Authorization: Bearer em_live_your_key_here"
The timeseries breaks the same metrics into buckets so you can chart them and spot a regression the day it starts. A deploy that broke a template, a domain whose DKIM expired, a campaign that drew complaints.
Breakdown by recipient domain
curl "https://api.euromail.dev/v1/analytics/domains" \
-H "Authorization: Bearer em_live_your_key_here"
Delivery is not uniform across mailbox providers. The per-domain breakdown shows how you perform at Gmail vs. Outlook vs. corporate servers, so you can tell a provider-specific block (e.g. only Gmail bouncing) from a general problem.
Breakdown by tag
If you tag your sends (auth, billing,
marketing), you can compare streams against each other:
curl "https://api.euromail.dev/v1/analytics/tags" \
-H "Authorization: Bearer em_live_your_key_here"
This is how you confirm that, say, your transactional mail has near-100% delivery while diagnosing a weaker marketing stream separately.
CSV export
For ad-hoc analysis in a spreadsheet or your own warehouse:
curl "https://api.euromail.dev/v1/analytics/export" \
-H "Authorization: Bearer em_live_your_key_here" \
-o euromail-analytics.csvPer-email engagement
For a single email, fetch its status and the rewritten tracked links to see exactly which URLs were clicked:
curl https://api.euromail.dev/v1/emails/{id}/links \
-H "Authorization: Bearer em_live_your_key_here"Real-time vs. aggregate
Analytics endpoints give you the aggregate picture. For real-time reaction. updating your own database the instant an email is delivered, opened, bounced, or complained about. Subscribe to Webhooks instead of polling these endpoints.
Going deeper on deliverability
Analytics tells you what happened. To understand why and get specific remediation (SPF/DKIM/DMARC alignment, blocklist status, reputation trends), use Deliverability Insights and DMARC Monitoring.