---
title: "Offer acceptance rate: choose the denominator before comparing"
canonical: https://metix.ai/blog/offer-acceptance-rate
published: 2026-11-03
updated: 2026-11-03
author: "Metix AI"
---

# Offer acceptance rate: choose the denominator before comparing

Canonical: https://metix.ai/blog/offer-acceptance-rate

The same offers can yield different acceptance rates. Keep revisions, pending responses and company withdrawals visible, then compare like-for-like cohorts.

Metix AI editorial team

The short version

Count accepted offers against a named denominator. In the independent example, 3 accepted and 1 declined produce 75% candidate-resolved acceptance; including 1 pending and 1 company withdrawal gives 50% accepted share of all 6 issued considerations. Neither is a benchmark or a hire rate.

Decision guide

## Which count are you comparing?

1. ### Define the issue cohort

   Choose formal-offer policy, first-issue window, reporting timezone and cutoff.

2. ### Reconcile the history

   Count each consideration once and preserve snapshots and revisions.

3. ### Show both denominators

   Report accepted, declined, pending and company-withdrawn counts beside each rate.

Later responses can change the same cohort’s rate without demonstrating an improvement in recruiting.

For employer recruiting teams reconciling formal job offers. Sources checked November 3, 2026. All example offers and dates are invented, including the future follow-up dates. Metix publishes this guide and sells recruiting software.

## Write the denominator beside the offer acceptance rate

The usual offer acceptance rate formula is accepted offers divided by offers extended, multiplied by 100. Before comparing a result with a dashboard or another team, check what that denominator includes. Pending offers are still unresolved. Keeping it in the denominator answers a different question from reporting candidate decisions alone.

[Workable's job-offer metrics FAQ](https://resources.workable.com/tutorial/faq-job-offer-metrics) defines the rate as accepted offers divided by offers extended. [Greenhouse's offer activity report](https://support.greenhouse.io/hc/en-us/articles/204635925-Offer-activity-report) instead defines acceptance rate as accepted divided by accepted plus rejected. The formulas answer different questions when offers are unresolved. Greenhouse also filters by activity date, so its report is not automatically the offer-start cohort used in this worksheet.

**Choose and label the question before comparing the percentage**

| Named measure | Formula | Question it answers |
| - | - | - |
| Candidate-resolved acceptance | A ÷ (A + D) × 100 | Of candidates who accepted or declined, what share accepted? |
| Accepted share of all issued | A ÷ N × 100 | Of all formal-offer considerations in this cohort, how many have an acceptance recorded by the cutoff? |

Here A is accepted, D is candidate-declined, P is pending and W is company-withdrawn; N = A + D + P + W. Our worksheet includes company withdrawals in all issued and reports them separately. It excludes them from candidate-resolved A + D. Disclose the chosen counting rules. A company withdrawal is not evidence that a candidate declined.

## Six offers can produce 75% and 50% at the same cutoff

Consider six invented formal-offer considerations first issued November 1–6, 2026. At the November 15 cutoff, three are accepted, one is declined, one is pending and one has been withdrawn by the company. One accepted offer went through a terms revision. Count the negotiation once.

**Independent worked example; no customer or industry performance**

| Consideration | Status at November 15 | Counting treatment |
| - | - | - |
| C01, C02, C03 | Accepted: 3 | In both numerators and denominators; C03 revisions do not add offers |
| C04 | Declined: 1 | In both denominators |
| C05 | Pending: 1 | In all-issued N, outside A + D |
| C06 | Company-withdrawn: 1 | In all-issued N, outside A + D; disclose separately |
| Result | 3 ÷ 4 = 75% candidate-resolved | 3 ÷ 6 = 50% accepted share of all issued |

Neither result is a calculation error. The first describes four candidate decisions; the second describes progress across six issued considerations. Reporting just "75% acceptance" loses that distinction. Show the counts: A = 3, D = 1, P = 1 and W = 1.

In the fictional history, C05 accepts on November 20. Rerun the same issue cohort at November 30 and the rates become 4 ÷ 5 = 80% and 4 ÷ 6 = 66.67%. That change comes from waiting for another response. It does not show that a new message, recruiter or product improved outcomes.

## Download the offer cohort worksheet and reproduce the result

[Download the complete offer cohort kit (ZIP)](https://metix.ai/resources/offer-acceptance-rate/offer-acceptance-rate-kit.zip). The files work without a Metix account: an [empty history CSV](https://metix.ai/resources/offer-acceptance-rate/blank-offers.csv), [six fictional considerations with revisions](https://metix.ai/resources/offer-acceptance-rate/fictional-offers.csv), [expected November 15 result](https://metix.ai/resources/offer-acceptance-rate/expected-nov15.json), [local Python calculator](https://metix.ai/resources/offer-acceptance-rate/offer-rate.py), [method and field instructions](https://metix.ai/resources/offer-acceptance-rate/METHOD.md) and a [manual review log](https://metix.ai/resources/offer-acceptance-rate/review-log.csv).

```
python3 offer-rate.py fictional-offers.csv --start 2026-11-01 --end 2026-11-06 --as-of 2026-11-15
```

Run that command after extracting the ZIP and opening its folder. It uses Python 3's standard library. The calculator prints JSON locally. It makes no network requests or file writes. Redirect or save a copy yourself if you need a retained report. Set your own dates and file. To reproduce the later snapshot, keep the start and end dates and change only `--as-of` to `2026-11-30`. Compare the saved output with the six considerations above before using your own file.

The input must pass validation. Missing columns, invalid dates, duplicated revisions and inconsistent history reject the file. An empty denominator produces `null`, meaning undefined. With a positive denominator and no acceptances, the result is zero. Keep undefined rates visibly undefined.

## Count the consideration once, even when the terms change

Use one opaque consideration ID for one person, one requisition and one continuous offer negotiation. Keep the candidate's name, email and compensation details in your authorized record system. Use opaque IDs. A revised salary or start date under that negotiation keeps the same ID and original first-issue date.

Each row records a snapshot. Revisions start at 1. `first_issued_on` selects the issue cohort; `recorded_on` says when the snapshot became known; `outcome_on` records an accepted, declined or company-withdrawn outcome. Pending rows leave the outcome date empty. The calculator selects the latest revision recorded on or before the cutoff. It validates future rows but excludes them from earlier results. Dates use the reporting timezone you choose; a cutoff includes snapshots through that calendar date. A larger revision breaks a same-date tie.

C03 has pending snapshots on November 3 and 6, followed by acceptance on November 10. C05 has a pending snapshot on November 5 and a later acceptance snapshot on November 20. At November 15, C05 remains pending even though the CSV contains its future response. The same consideration is never counted as an extra offer merely because someone exported another version. The script cannot recognize the same negotiation entered under two different IDs. Check duplicate identities privately first. If the first available snapshot is later than your cutoff, reconstruct the earlier history; do not backdate an acceptance to make the file run.

Decide what "formal offer" means in your team before extracting data. An approved draft may still be unsent. Record informal discussions separately if you want to study drop-off before formal issue; do not silently mix them into a formal-offer rate.

## Keep the issue window and follow-up age comparable

Compare cohorts after similar follow-up time. A cohort issued yesterday has had less chance to resolve than one issued last month. If one group contains senior technical roles in a new location and the other contains repeat hires in an established team, a difference in rates cannot identify the effect of the recruiting process without considering that change in scope. Show small counts directly rather than presenting a one-off change as a reliable trend.

For a combined team rate, add comparable counts first. One role with 1 acceptance from 1 candidate decision and another with 1 from 9 yield 2 ÷ 10 = 20%, not the unweighted average of 100% and 11.11%. Retain pending and withdrawn counts too. Before sharing, retain the issue window, cutoff, timezone, formal-offer policy, input version and counts with the output. Someone reviewing next month should be able to reproduce the same snapshot.

Use the [recruitment funnel metrics guide](https://metix.ai/blog/recruitment-funnel-metrics) for stages beginning at first contact. This worksheet begins at formal-offer issue. A first-contact cohort, an offer-start cohort and a report filtered by activity dates need not contain the same people.

## Use the rate to find offers to review

Start with the individual declined, pending and withdrawn records. Check the stated role and work arrangement against the offer, the time allowed for a decision, any unanswered questions and the candidate's own explanation if they choose to give one. The rate alone does not identify the cause of a decline.

Keep reported reasons separate from your interpretation. "Candidate cited commute" is evidence; "our interview process caused the decline" needs further support. Use the review log to assign a question, evidence location, owner and next check. Leave a reason unknown when you have no response.

A rate with acceptance in the numerator is not a start rate or quality-of-hire measure. Track acceptance-to-start outcomes separately. A later no-show, rescission or withdrawal after acceptance belongs in that downstream record. The calculator preserves a terminal acceptance instead of relabeling it as a decline; factual source corrections need a retained audit trail and a rerun. This guide supplies no universal good-rate threshold and makes no prediction about your next offer.

## Where Metix fits in this review

If an individual review exposes a mismatch between the role initially described and the final offer, revisit the hiring brief and approved outreach. The [Metix AI recruiting workflow](https://metix.ai/features/ai-recruiter) can structure the role, source candidates, screen for interest and book interviews after you approve outreach. The employer keeps the bar, interviews and hiring decisions.

Metix is not an offer administration tool or an ATS. Offer approval, terms, negotiation, issuing, acceptance records and employment remain employer work. Buying sourcing software is not a remedy for an unapproved offer or a compensation decision, and this calculator establishes no Metix effect on acceptance rates.

If the upstream task fits your team, create a role, review the evidence and approve outreach. Keep the offer review in the system and with the people authorized to handle it.

## Sources and limits

We read Workable's complete job-offer metrics FAQ, including its formula image, Greenhouse's complete offer activity report instructions and screenshots, and the current Metix product page. All were checked November 3, 2026. The vendor definitions above are attributed to their publishers. We designed the cohort policy, CSV and calculator and checked the fictional counts independently.

Greenhouse describes its own report, permissions and filters. This file neither reproduces that report nor imports into it. Vendor guidance and sample reports do not establish an industry benchmark. Check the definition and source window of any benchmark you plan to use before making a comparison.

### What is the offer acceptance rate formula?

A common definition is offers accepted divided by offers extended, multiplied by 100. Some reports use accepted divided by accepted plus rejected. Name the denominator, issue window, cutoff and included statuses before comparing results.

### How should pending and company-withdrawn offers be counted?

In this independent worksheet, candidate-resolved acceptance is A/(A+D), excluding pending and company withdrawals. Accepted share of all issued is A/(A+D+P+W), including them in the denominator. Both counts are displayed; company withdrawal is not relabeled as candidate rejection.

### Does a revised offer count as another offer?

A terms revision in the same person/requisition negotiation keeps one consideration ID and first-issue date. The calculator selects the latest snapshot recorded by the cutoff. It cannot detect the same consideration entered under two different IDs; reconcile those privately.

### What is a good offer acceptance rate?

This guide supplies no universal target. Compare matching definitions, role/market scope and follow-up age with the actual accepted, declined, pending and company-withdrawn counts. Acceptance is separate from starting employment or quality of hire.

About the editorial team

## [Metix AI editorial team](https://metix.ai/about)

Research & buying guides

The Metix AI editorial team writes hiring guides and product comparisons. We publish source dates, distinguish vendor claims from observations, and keep worked examples separate from measured outcomes. Metix AI also sells recruiting software.

[About Metix AI ↗](https://metix.ai/about)

## Next step

See plans, Credit rules, and trial terms on the [Metix AI pricing page](https://metix.ai/pricing). A 14-day trial includes a one-time 1 AI Agent and 500 Credits, with no card required.
