---
title: "Cold email metrics: formulas and tables"
url: "https://coldmeetings.com/blog/cold-email-metrics.md"
canonical_url: "https://coldmeetings.com/blog/cold-email-metrics"
last_updated: "2026-10-19"
type: "guide"
summary: "Every cold email metric as a formula with its denominator, computed from one fictional campaign, so you can rebuild each number from your own export."
related: ["https://coldmeetings.com/blog/email-deliverability-guide.md", "https://coldmeetings.com/blog/cold-emails-going-to-spam.md", "https://coldmeetings.com/blog/cold-email-follow-up-sequences.md"]
---

# Cold email metrics: formulas and tables

> **For AI agents:** the complete index of ColdMeetings pages is [llms.txt](https://coldmeetings.com/llms.txt). Every page is also served as markdown at its URL plus .md.

Every cold email metric as a formula with its denominator, computed from one fictional campaign, so you can rebuild each number from your own export.

Most arguments about cold email numbers are really arguments about the denominator. A reply rate over messages sent and a reply rate over messages delivered are different numbers, and a campaign can look better or worse depending on which one a tool shows you. This post fixes the formulas first and then runs one fictional campaign through all of them.

The comparison that matters is your campaign against your own earlier campaigns, so the work here is making sure you compute each number the same way every time.

## The formulas and what each one divides by

Write down the denominator next to each metric and keep it fixed. Delivered means sent minus bounced. Positive replies are the replies you judge interested, which is your call and should be recorded the same way every week.

Cold email metrics, each with its denominator

| Metric | Formula | Divide by | Question it answers |
| --- | --- | --- | --- |
| Bounce rate | bounced / sent x 100 | Messages sent | How clean was the list? |
| Delivery rate | (sent - bounced) / sent x 100 | Messages sent | How many messages were accepted? |
| Open rate | opened / delivered x 100 | Messages delivered | How many tracked opens did we log? |
| Reply rate | replies / delivered x 100 | Messages delivered | How many people answered? |
| Positive reply rate | positive replies / delivered x 100 | Messages delivered | How many answers were interest? |
| Meeting booked rate | meetings booked / replies x 100 | Replies | How many answers became meetings? |
| Show rate | meetings held / meetings booked x 100 | Meetings booked | How many booked meetings happened? |
| Complaint rate | spam complaints / delivered to inbox x 100 | Messages in the inbox | How often did people press the spam button? |
| Cost per meeting | (people + tools) / meetings | Meetings held, booked or qualified | What did one meeting cost to produce? |

## Why open rate needs a warning label

An open rate is reported by your sending tool, not by the mailbox provider. Google states that it does not track open rates, that it cannot verify the accuracy of open rates reported by third parties, and that a low open rate is not necessarily an accurate sign of a delivery or spam-classification problem. Treat an open rate as a rough signal to compare between your own sends that use the same tracking, and lean on replies, which are an action a person took.

For problems that threaten delivery, watch the signals the providers publish instead. Google asks senders to keep the user-reported spam rate below 0.10% and to avoid ever reaching 0.30%, calculated daily in Postmaster Tools. Yahoo asks for below 0.3%, calculated on mail delivered to the inbox.

## One campaign, every metric

The fictional sender mailed 2,000 first-touch emails. 70 messages bounced, so 1,930 were delivered. The rates below are computed from those counts by the same functions the free calculators use.

Worked metrics for a fictional campaign

| Metric | Numerator | Denominator | Result |
| --- | --- | --- | --- |
| Bounce rate | 70 | 2,000 sent | 3.5% |
| Delivery rate | 1,930 | 2,000 sent | 96.5% |
| Open rate (tracked) | 700 | 1,930 delivered | 36.3% |
| Reply rate | 58 | 1,930 delivered | 3% |
| Positive reply rate | 21 | 1,930 delivered | 1.1% |
| Meeting booked rate | 14 | 58 replies | 24.1% |
| Show rate | 11 | 14 booked | 78.6% |

## The same replies, two denominators

Here is why the denominator matters. The 58 replies give 3% over delivered messages and 2.9% over sent messages. Neither is wrong, but a number copied from a tool that divides by sent cannot be compared with one that divides by delivered. The gap grows with the bounce rate, so a dirty list quietly lowers a reply rate calculated over sent.

## From replies to cost per meeting

Cost per meeting needs money and a count, and you choose which count. Say the fictional team spent $3,000 on people time and $600 on tools for this campaign, a total of $3,600. That is $257.14 per booked meeting, $327.27 per held meeting and $900 per qualified opportunity, if 4 meetings produced a real opportunity. The three prices tell different stories, so pick one and use it every month.

The cost per meeting calculator on this site does the same sum with your own figures.

## Compare segments, not campaigns to a benchmark

The most reliable comparison is inside your own data: the same campaign split by segment, or this month against last month with the same formulas. The fictional table below splits delivered messages by the title of the person who received them.

Reply and booking rates by segment for a fictional campaign

| Segment | Delivered | Replies | Reply rate | Meetings booked | Meeting booked rate |
| --- | --- | --- | --- | --- | --- |
| Heads of operations | 640 | 31 | 4.8% | 9 | 29% |
| Heads of finance | 710 | 17 | 2.4% | 3 | 17.6% |
| Founders | 580 | 10 | 1.7% | 2 | 20% |

## Rebuild these from your own export

Any sequencing tool that exports one row per message can produce every number above.

1. Export one row per sent message with its status (delivered or bounced), reply flag, reply label and meeting outcome.
2. Count each status once per message, not once per event, so a person who opens twice counts as one open.
3. Compute each rate with its stated denominator and write the denominator in the column heading.
4. Keep a record of who you labeled positive and by what rule, so two people reading the same replies label them the same way.
5. Store the results by week and by segment, then compare each week with your own previous weeks.

## Questions

### Which denominator should my reply rate use?

Delivered messages, because a bounced message could not have been answered. Whatever you pick, use it every time and state it in the column heading, since the same replies give a lower figure over sent messages.

### What is a good reply rate?

A good rate is one you beat in your own earlier campaigns. Compare each campaign with your own earlier campaigns calculated the same way, and use Google's and Yahoo's published spam-rate lines only for the complaint rate they apply to.

## Where to go next

- [Cost per meeting calculator](https://coldmeetings.com/tools/cost-per-meeting.md)
- [Replies and meetings](https://coldmeetings.com/product/replies-and-meetings.md)
- [Reply rate](https://coldmeetings.com/glossary/reply-rate.md)
- [Open rate](https://coldmeetings.com/glossary/open-rate.md)
- [Meeting booked rate](https://coldmeetings.com/glossary/meeting-booked-rate.md)
- [Cost per meeting](https://coldmeetings.com/glossary/cost-per-meeting.md)

## Sources

- [Google, Email sender guidelines](https://support.google.com/a/answer/81126), read 2026-10-19
- [Google, Email sender guidelines FAQ](https://support.google.com/a/answer/14229414), read 2026-10-19
- [Yahoo, Sender requirements and recommendations](https://senders.yahooinc.com/best-practices/), read 2026-10-19

## Related

- [Deliverability checklist: auth and lists](https://coldmeetings.com/blog/email-deliverability-guide.md)
- [Cold emails landing in spam: find the cause](https://coldmeetings.com/blog/cold-emails-going-to-spam.md)
- [Follow-up sequences that earn replies](https://coldmeetings.com/blog/cold-email-follow-up-sequences.md)
