Skip to main content

ROI / TCO Calculator — Specification

Why it matters: the calculator is the most-used sales tool. It converts abstract "modern platform" into concrete rupee numbers a CFO can defend. Built as an internal web tool + public lite version.


1. Two versions​

VersionAudienceAccessOutput
Internal fullReps + AEs + customers in proposal stageSalesforce-embeddedCustomised PDF report
Public liteAnonymous web visitorskeynova.ai/roi-calculatorEmail-gated summary

The lite version is a lead-magnet. Inputs are simpler, results are directional. Real depth lives in the internal version.


2. Inputs (full version)​

2.1 Property profile​

InputTypeRequired
Property typedropdown (Hotel / Resort / Restaurant / PG / Homestay)Y
Star ratingdropdown (2-5★, or N/A for non-hotel)Y for hotel/resort
Number of properties in groupintegerY
Total keys / beds / outletsintegerY
Annual room nights (or occupancy %)integer or %Y
ADR (₹)integerY
F&B % of revenue%Y
Banquet/events % of revenue%Y
Spa % of revenue%optional

2.2 Current stack​

InputTypeRequired
Current PMS vendordropdown (eZee / IDS / Hotelogix / Cloudbeds / Opera / Other / None)Y
Current PMS monthly cost (₹)integeroptional (default by vendor)
Channel manager vendor + costtext + integerY
POS vendor + cost (if F&B)text + integerY
Payment gateway + MDR %text + %Y
Accounting software + costtext + integeroptional
Banquet / spa specialised tools?yes/no + costoptional
Number of vendor integration pointsintegercalculated

2.3 Operational pain​

InputTypeWhy
Hours/week spent on reconciliationintegerquantifies vendor sprawl tax
Hours/month spent on GST e-invoicingintegercompliance value
Number of OTA double-bookings/yearintegerchannel manager value
Estimated revenue lost to OTA parity violations₹RM module value
Annual staff training cost₹Hindi UI value

2.4 Strategic​

InputType
Planned property openings in 24 monthsinteger
GST turnover bracket (₹ Cr)bracket
DPDPA compliance gap (yes/no/partial)dropdown

3. Calculations​

3.1 Current state TCO​

current_software_cost = sum(all_vendor_monthly_costs) * 12
current_integration_cost = num_integration_points * ₹40,000 # avg integration maintenance/yr
current_reconciliation_cost =
hours_per_week_reconciliation * 52 * avg_hourly_cost_of_finance_staff
current_compliance_cost =
hours_per_month_einvoice * 12 * avg_hourly_cost
+ (DPDPA_compliance_gap == "yes") ? ₹3,00,000 : ₹0
current_double_booking_cost =
num_double_bookings_per_year * avg_room_revenue_loss_per_dispute (₹4,500)
current_training_cost = staff_training_annual

current_TCO = sum(all of the above)

3.2 KeyNova TCO​

keynova_software_cost =
keynova_tier_unit_price * num_keys * 12

keynova_integration_cost = 0 # consolidated, single platform
keynova_reconciliation_cost =
hours_per_week_reconciliation * 0.3 * 52 * avg_hourly_cost # ~70% reduction
keynova_compliance_cost = 0 # built-in
keynova_double_booking_cost =
num_double_bookings_per_year * 0.1 * avg_room_revenue_loss # ~90% reduction
keynova_training_cost = staff_training_annual * 0.6 # ~40% reduction (Hindi UI)
keynova_implementation_one_time = property_implementation_fee

keynova_year_1_TCO = sum(above + one_time)
keynova_steady_state_TCO = sum(above)

3.3 Output metrics​

year_1_savings = current_TCO - keynova_year_1_TCO
year_2_plus_savings = current_TCO - keynova_steady_state_TCO
three_year_total_savings = year_1_savings + 2 * year_2_plus_savings

payback_period_months =
keynova_year_1_TCO_one_time / (year_2_plus_savings / 12)

# Revenue upside (Business + Enterprise tiers, if RM module included)
revenue_uplift = annual_rooms_revenue * 0.04 # conservative 4% RevPAR uplift assumption
adjusted_savings = three_year_total_savings + 3 * revenue_uplift

3.4 Sanity checks (must pass to display result)​

  • year_1_savings between -₹2 lakh and +₹50 lakh per 100 keys
  • payback_period_months between 3 and 36 months
  • revenue_uplift ≤ 8% of room revenue (anything above is hard to claim)
  • If sanity check fails, output flags reviewer + suggests inputs to recheck

4. Outputs​

4.1 Hero metric (above the fold)​

You could save ₹[X] lakh over 3 years with KeyNova.

4.2 Secondary metrics​

  • Payback period: [N] months
  • Hours/week saved: [N] hours
  • OTA double-bookings prevented: [N]/year
  • Compliance gap closed: ✓ (with checkmark for each: e-invoice, DPDPA, CERT-In)

4.3 Breakdown table​

Cost categoryTodayKeyNova (Y1)KeyNova (Y2+)3-yr savings
Software & subscription₹X₹X₹X₹X
Integration & maintenance₹X₹0₹0₹X
Reconciliation labour₹X₹X₹X₹X
Compliance labour₹X₹0₹0₹X
Lost revenue (OTA disputes)₹X₹X₹X₹X
Staff training₹X₹X₹X₹X
Implementation (one-time)—₹X——
TOTAL₹X₹X₹X₹X

4.4 Visual​

A bar chart: Year 1, Year 2, Year 3 — current TCO vs KeyNova TCO, savings highlighted.

A small "transparent assumptions" section with the rates used:

  • Hourly cost of finance/accounts staff: ₹400/hr
  • Per OTA double-booking loss: ₹4,500
  • Integration maintenance/yr: ₹40,000 per integration
  • RevPAR uplift from RM: 4% (range 2-8%)
  • Staff training cost reduction with Hindi UI: 40%
  • Reconciliation reduction: 70%

Customer-tunable in the internal version; locked in the public version.


5. Public lite version​

Simpler inputs:

  • Property type
  • Number of keys
  • Current PMS vendor (or "Excel/None")
  • Email + property name

Single-output hero metric ("You could save ₹X over 3 years")

  • "Get the detailed breakdown" CTA (email-gated PDF)

Used as:

  • Bottom-of-funnel landing page
  • Linked from comparison pages
  • Embedded in pricing page

6. Sample customised output (for proposal slide)​

For Hotel ABC, 80 keys, Goa
Currently on eZee Absolute + Tally + Citruspay + Ginger Channel Manager

3-Year Total Savings: ₹26.8 lakh
Payback period: 9 months
Hours/week recovered: 19
Compliance gaps closed:
✓ GST e-invoice (IRN)
✓ DPDPA
✓ CERT-In log retention
✓ TRAI DND consent
RevPAR uplift potential: 4% (₹14 lakh/yr)

7. Implementation details​

7.1 Tech stack​

  • Frontend: same Next.js dashboard codebase, isolated subdomain roi.keynova.ai
  • Backend: serverless function that computes + generates PDF
  • PDF: HTML-to-PDF (Puppeteer) with KeyNova branded template
  • Storage: results saved to Salesforce against opportunity (internal) or to HubSpot lead (public)
  • Tracking: every interaction logged → product analytics

7.2 Customer trust mechanisms​

  • "Show your work" — every number traceable to an input + assumption
  • "Adjust assumptions" — internal version lets rep tune (with audit log)
  • "Sensitivity analysis" — show range (e.g., savings between ₹X and ₹Y)
  • "What we don't include" — note explicit non-counted items (e.g., productivity gains beyond reconciliation)

7.3 Versioning​

  • v1.0: launched alongside pricing page (Day 0)
  • v1.1: tier-specific assumptions (Q2 FY26)
  • v2.0: customer-self-served version (Q4 FY26)
  • v3.0: industry benchmark overlay using KeyNova Index (FY27)

8. Governance​

  • Assumption updates require sign-off by **Director of Product Marketing
    • CFO**
  • Sales reps can't change underlying formulas
  • Reps can override individual inputs with audit log
  • Customers get full transparency on assumptions used

9. Anti-patterns to avoid​

  • Don't inflate savings (gets caught in CFO review, loses credibility)
  • Don't include "soft" benefits without disclaimer (productivity, morale)
  • Don't compare to "industry average" when prospect has provided their actuals
  • Don't hide assumptions in fine print
  • Don't promise revenue uplift as a hard number (always "potential" or "estimated")

10. Distribution + adoption​

  • Embedded in every proposal (auto-attached PDF)
  • Linked in every Demo follow-up email
  • Public version is the #1 CTA on the pricing page
  • A/B test public version conversion rates quarterly
  • Internal rep usage tracked — reps who use it close 30% more

Last reviewed: 2026-05-16 — needs CFO + Product Marketing sign-off before build