ForHosting KIT · Finance & money

Coupon payment calculator

A 1,000 bond with a 5% coupon paid twice a year sends 25 on each payment date, 50 over the year. Enter face value, annual coupon rate and payments per year to see the cash every coupon date brings. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Face value
1,000
Coupon rate
5
Payments per year
2
You get
Coupon rate decimal
0.05
Annual coupon
50
Coupon payment
25

A coupon payment is the cash a coupon bond pays the holder on each scheduled interest date: it is not the yield, not the market price, and not the present value of a zero. Students, advisors, and product teams need that dollar amount from three numbers — face (par) value, the annual coupon rate, and how many times a year the issuer pays — without opening a spreadsheet or a full fixed-income library. This coupon payment calculator applies the textbook identity coupon equals face times the annual rate divided by payments per year, returns the periodic payment and the annual coupon total, and fails clearly when payments per year is not a positive integer.

What a coupon payment is and is not

A coupon payment is the contractual cash a coupon bond sends its holder on each scheduled interest date. It is not the bond's market price, not its yield to maturity, and not the present value of a zero-coupon strip: those answers need a discount rate and a remaining life. The coupon itself is printed on the indenture as face (par) value times the annual coupon rate, then split across the number of payments the issuer makes each year.

A one-thousand par bond with a five percent annual coupon that pays twice a year sends twenty-five on every six-month date; the same bond paying once a year sends fifty on the single coupon date; a quarterly schedule divides the annual coupon by four, and a monthly schedule divides it by twelve. Investors, students, and product teams search for a coupon payment calculator when they need that dollar figure from face, rate, and frequency without a spreadsheet.

This tool applies that identity, returns the periodic coupon and the annual coupon total, and rejects a payments-per-year value that is not a positive integer so a fractional or zero frequency never silently produces a nonsense payment. Day-count conventions, dirty versus clean price, and accrued interest between coupon dates are out of scope: those start from the coupon amount this calculator reports, they do not replace it.

A zero coupon rate is allowed and yields a zero payment, which is how a true zero-coupon bond looks when you ask only for the coupon cash, not for a discounted price.

Classroom and exam checks

Verify textbook coupon payments for annual, semiannual, quarterly, and monthly bonds from face, annual coupon rate, and payments per year.

Product and statement widgets

Show investors the next coupon amount next to quoted face and coupon rate on onboarding or calculator pages without a full bond library.

What if payments per year is not a whole number?

Zero, negative, and fractional frequencies are not billed.

How is this different from bond yield or a zero-coupon price?

This capability answers only how much cash each coupon pays. Yield to maturity needs a market price and remaining life; a zero-coupon price discounts a single face cash flow. Neither is computed here.

How do I work out the coupon of a quarterly or monthly bond?

Multiply the face value by the annual coupon rate to get the yearly coupon, then divide by the number of payments: by 4 for quarterly, by 12 for monthly. The calculator does both steps at once.

Should I enter the coupon rate as 5 or 0.05?

Enter 5 for a 5% coupon. The rate is typed as a percent, the way it is printed on the bond, and the calculator converts it to a decimal on its own.

Does the result include accrued interest?

No. Day-count conventions, accrued interest between coupon dates and clean versus dirty prices are outside its scope. Those calculations start from the coupon amount this tool returns; they do not replace it.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/fin/coupon-payment

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/fin/coupon-payment \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"face_value":1000,"coupon_rate":5,"payments_per_year":2}'
{
  "face_value": 1000,
  "coupon_rate": 5,
  "payments_per_year": 2
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "fin.coupon_payment",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Input contract, formula, and response fields

Money-like fields use half-up rounding to two decimals so goldens stay byte-stable across runtimes. Example: face one thousand, coupon five, two payments per year yields a twenty-five periodic coupon and a fifty annual coupon — the textbook semiannual identity. POST a JSON body with three required fields. face_value is the par amount used to size the coupon and must be a finite number greater than zero (aliases: face, par, par_value). coupon_rate is the annual coupon as a percent — five means five percent per year, not a decimal fraction — and must be greater than or equal to zero (aliases: coupon, coupon_percent, annual_coupon_rate). payments_per_year is how many coupon dates fall in one year and must be a positive integer from one to three hundred sixty-five; typical values are one (annual), two (semiannual), four (quarterly), and twelve (monthly). Aliases frequency, n, periods_per_year, and m map to the same field. A zero, negative, or non-integer frequency is rejected with invalid_input naming payments_per_year and is not billed — that is the hard contract of this capability. The engine forms the decimal rate r as coupon_rate over one hundred, the annual coupon as face_value times r, and the periodic coupon_payment as that annual coupon divided by payments_per_year. The response echoes the three inputs, coupon_rate_decimal (r), annual_coupon, coupon_payment, and a short formula string. Missing fields, empty strings, non-finite values, a non-positive face, or a negative coupon rate also fail with invalid_input.

Where a coupon payment calculator earns its keep

Wealth, treasury, and brokerage tooling often needs the cash amount of the next coupon before a full schedule or a yield engine is loaded, or when a product landing only has face, coupon rate, and frequency. Interview and homework generators require a deterministic oracle that marks a wrong coupon and rejects a non-integer payments-per-year value instead of returning NaN or a silent empty object. Use it when the question is the periodic coupon amount, and layer richer analytics in your own service when you need them. Sweep payments_per_year or coupon_rate in a loop from your own code to compare schedules for a fixed face; pin coupon_payment in tests; keep requests small. This tool does not produce yield to maturity, a zero-coupon present price, Macaulay duration, or accrued interest — only the contractual coupon cash.

Schedule comparison for a fixed face

Loop payments_per_year to see how the same annual coupon splits across two, four, or twelve dates before you build a cash-flow table.

How is the coupon payment calculated?

coupon_payment = face_value × (coupon_rate/100) / payments_per_year. The API also returns annual_coupon (face times the decimal rate) and coupon_rate_decimal.

Is coupon_rate a percent or a decimal?

A percent per year: 5 means 5%, not 0.05. The response includes coupon_rate_decimal so a spreadsheet can keep the fraction next to the percent people type.

What does the coupon payment calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →