EMI Calculator
A reusable PRD template filled with an example for the EMI calculator on this website.
Example draft · v1.0
How to use: copy this structure for your product, replace the highlighted placeholders, and review the proposed targets with your team. This example documents the current calculator and proposed acceptance criteria; it is not an approved delivery commitment.
Use your browser’s print dialog to save a PDF. This page is a reference template; edits are not saved here.
1. Document overview
- Product
- EMI Calculator
- Owner
- [Product owner]
- Contributors
- [Design, engineering, QA]
- Reviewers
- [Approvers]
- Last updated
- 27 October 2026
- Target release
- [Release date]
- Product link
- EMI Calculator
2. Problem & opportunity
People considering a loan need to understand the monthly payment and total interest before comparing amounts, rates, and repayment periods. Manual calculations make scenario comparison slow and prone to errors.
Hypothesis: a simple calculator with clear inputs and an immediate repayment breakdown helps users understand how loan terms affect their budget.
Evidence to add: [User interviews, observed pain points, and baseline data]. User demand has not been validated in this example.
3. Users & user stories
Primary user: an individual estimating a fixed-rate loan in Indian rupees.
- As a borrower, I want to enter an amount, annual interest rate, and tenure so I can estimate my monthly EMI.
- As a borrower, I want to compare repayment periods so I can understand the trade-off between monthly payment and total interest.
- As a mobile user, I want readable results and clear input errors so I can complete an estimate on my phone.
4. Goals & success measures
- Show monthly EMI, principal, total interest, total repayment, and payment count.
- Support valid zero-interest loans and tenure in years or months.
- Make the complete flow usable with a keyboard and on small screens.
| Measure | Target | Validation |
|---|---|---|
| Calculation correctness | All agreed reference cases pass; displayed amounts within ₹0.01 of reference rounding | Independent reference calculations and automated checks |
| Ease of use | At least 4 of 5 participants complete an estimate without help in 60 seconds | Moderated usability session; sample to be recruited |
| Result update | Within 200 ms of a valid input change on the agreed test device | Browser measurement; device to be defined |
Measurement owner: [Name]. Analytics are not currently installed.
5. Scope
Included in v1
INR amounts, fixed annual interest, monthly reducing-balance calculations, years/months tenure, live estimates, a Calculate button, validation, and a principal-versus-interest bar.
Outside v1
Loan applications, lender offers, accounts, saved scenarios, amortization schedules, prepayments, floating rates, multiple currencies, and fees or tax calculations.
6. Functional requirements
| ID | Priority | Requirement & acceptance criterion |
|---|---|---|
| FR-01 | Must | Accept a loan amount from ₹1 to ₹1,000,000,000,000 and an annual rate from 0% to 100%. Reject blank, nonfinite, or out-of-range values. |
| FR-02 | Must | Accept whole-number tenure from 1–50 years or 1–600 months. When converting months to years, round up to a whole year; results reflect the converted tenure. |
| FR-03 | Must | Update the estimate after valid edits and on Calculate. Show INR values with Indian digit grouping and two decimal places. |
| FR-04 | Must | Show principal, monthly EMI, total interest, total repayment, and number of monthly payments. Compute totals using unrounded values. |
| FR-05 | Must | For a zero annual rate, EMI equals principal divided by months and total interest is zero. |
| FR-06 | Must | For invalid edits, show an understandable error and clear stale results. All fields have labels and results are announced to assistive technology. |
| FR-07 | Must | Explain assumptions and exclusions beside the result. Provide navigation between the home page, calculator, and PRD. |
7. Calculation rules & reference cases
Let P be principal, r be annual percentage rate ÷ 1,200, and n be the number of monthly payments.
EMI = P × r ÷ (1 − (1 + r)−n)
For r = 0, use EMI = P ÷ n. Total repayment = EMI × n; total interest = total repayment − P. The model assumes payments at the end of each month and a constant rate.
| Principal | Annual rate | Tenure | Expected monthly EMI |
|---|---|---|---|
| ₹10,00,000 | 8.5% | 60 months | ₹20,516.53 |
| ₹1,20,000 | 0% | 12 months | ₹10,000.00 |
| ₹10,000 | 12% | 1 month | ₹10,100.00 |
8. User experience & quality
Flow: open calculator → enter loan details → review the estimate → adjust inputs to compare scenarios.
- Default scenario: ₹10,00,000 at 8.5% for 5 years.
- Display inputs and results side by side on desktop and stack them on mobile.
- Support keyboard navigation, visible focus, labeled inputs, and readable contrast. Target WCAG 2.2 AA; audit before claiming compliance.
- Check current Chrome, Safari, Firefox, and Edge, plus a 320 px viewport without page-level horizontal scrolling.
- Calculate in the browser. Do not send entered loan values to a server or store them in browser storage. Hosting infrastructure may process ordinary request logs.
9. Delivery & release checklist
Dependencies: Cloudflare Pages hosting, a JavaScript-capable browser, and an agreed reference calculation set.
- Product owner approves scope and acceptance criteria.
- Engineering validates standard, zero-rate, single-payment, very small rate, boundary, and invalid-input cases.
- QA checks unit conversion, live updates, keyboard use, screen-reader announcements, and mobile layout.
- Publish to the existing Cloudflare Pages project and verify the production links and assets.
- Assign a release owner and record the deployment identifier; retain the prior deployment for rollback.
Owners and dates: [Design review] · [Engineering complete] · [QA sign-off] · [Launch]
10. Risks & open questions
- Lender differences: rounding, fees, payment dates, and floating rates can change actual payments. Keep the estimate assumptions visible.
- Tenure conversion: should a future version allow fractional years instead of rounding up when switching from months?
- Validation: do the current amount and interest limits match the intended borrowers?
- Future scope: is a downloadable amortization schedule the next most useful feature? Validate with users.
- Decision log: [Date · decision · rationale · owner].