{
  "slug": "bootcamp-isa-vs-upfront",
  "title": "Bootcamp ISA vs Upfront Tuition Calculator",
  "heading": "Coding Bootcamp ISA vs Upfront Cost Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/bootcamp-isa-vs-upfront",
  "summary": "Compare total cost of an income share agreement against paying tuition upfront.",
  "description": "Bootcamps often offer a choice between paying tuition upfront or signing an income share agreement (ISA) that takes a percentage of your salary for a fixed period after you get a job. The ISA feels free until you run the numbers against your expected salary. This calculator totals what you'd actually pay under an ISA given your projected post-bootcamp salary and compares it directly against the upfront price, factoring in the payment cap most ISAs include.",
  "formula": "ISA total paid = min(salary × ISA% × months ÷ 12, ISA cap). Compare against upfront tuition minus any financing cost if upfront is a loan.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=bootcamp-isa-vs-upfront",
  "inputs": [
    {
      "id": "upfrontTuition",
      "label": "Upfront tuition price",
      "kind": "number",
      "hint": null,
      "default": 15000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "postGradSalary",
      "label": "Expected post-bootcamp salary",
      "kind": "number",
      "hint": null,
      "default": 75000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "isaPercent",
      "label": "ISA percentage of income",
      "kind": "number",
      "hint": null,
      "default": 12,
      "unit": "%",
      "min": 0,
      "max": 30
    },
    {
      "id": "isaMonths",
      "label": "ISA payment period",
      "kind": "number",
      "hint": null,
      "default": 24,
      "unit": "months",
      "min": 1,
      "max": 60
    },
    {
      "id": "isaCap",
      "label": "ISA payment cap",
      "kind": "number",
      "hint": null,
      "default": 22000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "loanRate",
      "label": "APR if upfront is financed",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": "%",
      "min": 0,
      "max": 25
    }
  ],
  "outputs": [
    {
      "id": "cheaperOption",
      "label": "Cheaper option",
      "format": "raw",
      "hint": null,
      "primary": true
    },
    {
      "id": "isaTotal",
      "label": "Total paid under ISA",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "upfrontTotal",
      "label": "Total paid upfront (incl. financing)",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "savings",
      "label": "Savings by choosing the cheaper option",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Upfront tuition price: 15000 $",
      "Expected post-bootcamp salary: 75000 $",
      "ISA percentage of income: 12 %",
      "ISA payment period: 24 months",
      "ISA payment cap: 22000 $",
      "APR if upfront is financed: 0 %"
    ],
    "outputs": [
      "Cheaper option: Upfront is cheaper",
      "Total paid under ISA: $18,000",
      "Total paid upfront (incl. financing): $15,000",
      "Savings by choosing the cheaper option: -$3,000"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter upfront tuition price ($).",
      "Enter expected post-bootcamp salary ($).",
      "Enter isa percentage of income (%).",
      "Enter isa payment period (months).",
      "Enter isa payment cap ($).",
      "Enter apr if upfront is financed (%).",
      "Read your cheaper option on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "upfrontTuition": 9000,
        "postGradSalary": 45000,
        "isaPercent": 7,
        "isaMonths": 14,
        "isaCap": 13000,
        "loanRate": 0
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "upfrontTuition": 15000,
        "postGradSalary": 75000,
        "isaPercent": 12,
        "isaMonths": 24,
        "isaCap": 22000,
        "loanRate": 0
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "upfrontTuition": 24000,
        "postGradSalary": 120000,
        "isaPercent": 19,
        "isaMonths": 38,
        "isaCap": 35000,
        "loanRate": 0
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "When is an ISA actually the better deal?",
      "a": "When your salary projection is uncertain or you expect to earn on the lower end of outcomes, since most ISAs include an income floor below which you pay nothing. If your salary is likely to be strong and predictable, an ISA usually costs more than the equivalent cash price."
    },
    {
      "q": "What's the payment cap and why does it matter?",
      "a": "Most ISAs cap total payments at roughly 1.5x the stated tuition price, regardless of how high your salary goes. Without the cap, a high earner could pay far more than upfront tuition over the payment period, so always check this figure is included in a real contract."
    },
    {
      "q": "Does the ISA percentage apply to gross or take-home pay?",
      "a": "Almost always gross salary, before taxes, and it typically excludes bonuses and equity unless the contract states otherwise. Read the specific ISA agreement — this materially changes the total paid."
    },
    {
      "q": "What if I don't get a job above the income floor?",
      "a": "Reputable ISAs pause or forgive payments below the minimum income threshold (often $40,000-$50,000) and most cap the total payment window at a fixed number of years even if you never cross that threshold, though terms vary widely by provider."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/test-prep-score-gain-value",
    "https://www.revenuelab.fyi/toolbox/tutor-hourly-rate-utilization"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Bootcamp ISA vs Upfront Tuition Calculator (https://www.revenuelab.fyi/toolbox/bootcamp-isa-vs-upfront)"
}