Skip to content

Funded vs Self-Funded PhD Costs by Country 2026

Compare the annual cost of paying for a PhD yourself with a funded offer that may include a stipend or salary, a tuition waiver, or both. The country comparison below separates official funding examples from self-funded tuition exposure so that a scholarship, employment contract and fee waiver are not treated as the same thing.

Funded vs Self-Funded PhD Cost Calculator

Choose a country and enter the figures from the PhD offer you are actually considering. For salaried doctoral positions, enter annual take-home pay rather than gross salary. For scholarships, enter the spendable annual stipend. Tuition waivers are entered separately so they are not mistaken for cash available for living costs.

Select country United Kingdom Australia Germany France Netherlands Belgium Sweden Norway Denmark Finland Austria Switzerland Ireland Canada United States New Zealand Japan South Korea Singapore
Add a tuition waiver and view the calculation breakdown

Leave this empty if the funded offer does not waive tuition or mandatory fees.

Cost before funding —
Cash funding entered —
Fee waiver entered —
Remaining funded out-of-pocket —

What Funded vs Self-Funded PhD Cost Really Means

A funded PhD can be a scholarship, a studentship, a tuition waiver, a research fellowship or a salaried employment contract. Those forms of support are not financially identical. A tuition waiver reduces the bill paid to the university but does not pay rent. A stipend is normally cash support for the doctoral candidate. A salary may be quoted gross before tax and social contributions, while a scholarship may be tax-free under the rules that apply to the award.

A self-funded PhD means the candidate must cover the costs not paid by a university, employer, scholarship provider or government programme. In a low-tuition system, self-funding can therefore mean mainly living costs. In a high-fee system, it can mean tuition plus living costs and mandatory charges. When comparing offers, use the same annual period for both scenarios and separate money paid to you from money paid directly to the university.

Funded vs Self-Funded PhD Costs by Country

The figures below are official programme rates, national rules or clearly labelled institutional examples. They are not presented as guaranteed national PhD packages. Funding can vary by discipline, university, nationality, employment status and award scheme.

CountryOfficial funded referenceSelf-funded exposureWhat matters most
United KingdomUKRI’s 2026/27 minimum stipend is £21,805 and its fee level is £5,238. [S1]University tuition plus living costs. UKRI contributes only up to the home-fee level, so an international fee gap can remain. [S1]Check whether the offer covers the full international tuition bill, not only the stipend.
AustraliaThe 2026 Research Training Program stipend range is A$34,315 base to A$53,608 maximum; universities can also provide RTP fee offsets. [S2]Higher-degree research tuition and living costs remain the candidate’s responsibility when a fee offset or stipend is not included.Read the award components separately: stipend, fee offset and allowances do different jobs.
GermanyFunding may come from scholarships, research projects or employment. DAAD lists multiple doctoral funding routes. [S3]Doctoral tuition at public universities is free for at least the first six semesters, although a semester contribution remains. [S3]Living costs and the type of funding often matter more than tuition.
FranceCampus France guidance lists doctoral-fellowship funding around €1,400 net per month and research-institute contracts around €1,500 net per month. [S5]Public doctoral registration for 2026/27 is €397 for EU/EEA/Swiss students and €398 for non-EU students; doctoral programmes are outside differentiated non-EU tuition. [S4]With low public doctoral tuition, the central comparison is funded monthly income versus living costs.
NetherlandsA current University of Amsterdam fully funded PhD employment example pays €3,204 gross per month in year one, rising to €4,051 in the final year. [S6]External and self-funded doctoral arrangements are institution-specific and should not be costed as if they automatically receive an employee salary.For employed PhDs, compare take-home pay with living costs rather than subtracting gross salary from expenses.
BelgiumThe 2026 FWO fundamental-research PhD fellowship in Flanders lists €2,600 per month plus a €3,720 annual bench fee for four years. [S7]Fees and unfunded living costs depend on the host institution and the Belgian community or funding route.The bench fee is research support, not personal spending money.
SwedenUppsala University’s doctoral salary ladder starts at SEK 34,000 per month from 1 October 2026 and rises with progress. [S9]Doctoral applicants and registered third-cycle students do not pay application or tuition fees. [S8]Self-funding mainly means living costs; an employed offer should be evaluated using net pay.
NorwayFunded doctoral employment rates depend on the employer and position.Doctoral candidates are normally tuition-exempt at public institutions. The official 2026/27 student living-cost estimate is NOK 170,368 per year, plus an approximately NOK 1,000 semester fee each semester. [S10]A self-funded doctoral budget can be dominated by living costs rather than tuition.
DenmarkStudy in Denmark cites an average University of Copenhagen PhD-fellow salary of DKK 32,567 per month for faculty- or department-funded candidates. [S11]The same national study portal states a DKK 50,000 annual tuition fee for fee-paying PhD students in the described route, in addition to living costs. [S11]A salaried employment offer and a self-financed enrolment are structurally different financial models.
FinlandPaid doctoral positions may be available through universities and research funding channels. [S12]Doctoral programmes charge no tuition regardless of nationality, but the official planning range for living costs is about €900 to €1,200 per month. [S13]Zero tuition is not the same as a funded PhD because living costs still need financing.
AustriaFWF’s 2026 project rate lists a doctoral-candidate salary of €2,832.10 per month for a 30-hour position. [S14]At universities, third-country students generally pay €751.92 per semester, while the compulsory student-union and accident-insurance fee is €25.20 per semester; EU/EEA rules differ. [S15]Employment income and tuition status should be entered as separate parts of the comparison.
SwitzerlandThe SNSF minimum gross salary for doctoral students employed under its funding schemes increased to CHF 50,000 from 1 January 2026. [S16]University tuition and local living costs vary by institution and location, so a self-funded total needs host-specific figures.Use annual net cash after tax in the calculator rather than the published gross salary floor.
IrelandThe 2026 Government of Ireland Postgraduate Scholarship offers a €25,000 stipend, up to €5,750 toward fees and €3,250 in eligible direct research costs. [S17]Any uncovered tuition plus living costs remains self-funded; eligible non-EU awardees can request an additional fee contribution under the scheme. [S17]Do not count the research-cost budget as personal living cash.
CanadaThe Canada Graduate Research Scholarship – Doctoral is C$40,000 per year for 36 months. [S18]Canada’s official study portal says tuition varies by school, programme and region; its 2026 university graduate average is C$24,028, which is not a PhD-specific national fee. [S19]Treat national scholarships as funding benchmarks, not as a universal doctoral package.
United StatesThe 2026 NSF Graduate Research Fellowship provides a US$37,000 stipend plus a US$16,000 cost-of-education allowance for each of three funded years within a five-year fellowship period. [S20]PhD tuition, mandatory fees and living costs vary by university, and assistantship or fellowship terms vary by programme.NSF GRFP is an important official benchmark but not a national average or a package available to every PhD student.
New ZealandThe University of Auckland’s 2026 doctoral scholarship provides up to NZ$35,468 per year plus tuition and specified compulsory charges for eligible awardees. [S21]At Auckland, the 2026 PhD tuition fee is NZ$8,847.60 for international PhD students who meet the domestic-fee conditions, before other costs. [S22]This is a current institutional example, not a single nationwide scholarship rate.
JapanThe official MEXT scholarship page lists ¥143,000 to ¥145,000 per month for graduate-level research students and exempts tuition. [S23]Average first-year graduate-school academic fees are about ¥820,000 at national universities, ¥900,000 at local public universities and ¥1.1 million at private universities outside specified professional fields. [S24]MEXT funding can change both the tuition and living-cost sides of the equation; self-funded fees depend on institution type.
South KoreaThe Korean government’s GKS graduate programme lists tuition, airfare, language-training costs and study allowances among its benefits for master’s and doctoral recipients. [S25]University tuition and living costs vary, and university scholarships may cover different percentages of tuition. [S25]Use the exact GKS or university award letter because the package is more important than a single headline amount.
SingaporeFrom 1 January 2026, the NUS Research Scholarship pays international PhD students SGD 3,000 per month with a full tuition waiver, plus SGD 500 per month after the qualifying examination. [S26]Self-funded research tuition and living costs depend on the institution, programme and student status.Nationality and qualifying-exam status can change the funded cash amount even within one university.

Where Self-Funding Can Mean Mostly Living Costs

Germany, Sweden, Norway and Finland illustrate why a self-funded PhD should not automatically be modelled as a large tuition bill. Germany’s public doctoral tuition is free for at least the first six semesters, Sweden exempts doctoral study from application and tuition fees, Norway normally exempts doctoral candidates at public institutions, and Finland charges no doctoral tuition. [S3] [S8] [S10] [S13]

That does not make an unfunded doctorate inexpensive. Rent, food, insurance, transport, research travel and the opportunity cost of several years without normal full-time earnings can still make self-funding difficult. For destination-level tuition research, the tuition fees section can be used alongside the offer-specific calculator above.

Where a Funded Offer Changes the Cost Structure Most

In the United Kingdom, Australia, Ireland, Canada, the United States, Japan and Singapore, the funded reference schemes show why the word “funded” needs to be unpacked. Some packages combine cash support with a fee contribution or full waiver; others pay a cost-of-education allowance to the institution; research-cost budgets may be restricted to project expenses. [S1] [S2] [S17] [S18] [S20] [S23] [S26]

The correct comparison is therefore not “stipend versus tuition.” It is the full annual self-funded cost versus the remaining cost after cash funding and fee waivers are applied to the same year. If you are comparing whether an offer fits your resources, the affordability resources can be used after calculating the remaining funding gap.

Salary-Funded PhDs Need a Different Reading

The Netherlands, Sweden, Denmark, Austria and Switzerland all have official or institutional examples where doctoral funding is expressed as employment pay rather than a student stipend. [S6] [S9] [S11] [S14] [S16]

Gross salary is not the same as spendable funding. Tax, pension and social-insurance deductions can reduce the amount available for rent and other costs. That is why the calculator asks for annual take-home PhD pay when the funded route is employment. A gross salary benchmark can still help compare offers, but it should not be subtracted directly from a personal living-cost budget.

Methodology

The calculator uses user-entered annual figures rather than forcing one national PhD cost onto every university. Annual tuition and mandatory fees plus annual living and study costs form the self-funded cost. Annual cash funding is then subtracted, together with any tuition or fee waiver entered in the optional field. A waiver cannot exceed the tuition-and-fee amount entered.

Self-funded annual cost = annual tuition and mandatory fees + annual living and study costs.

Funded annual out-of-pocket = max(0, self-funded annual cost – annual cash funding – annual tuition or fee waiver).

Annual funding advantage = self-funded annual cost – funded annual out-of-pocket.

If total cash funding plus the fee waiver exceeds the entered annual cost, the calculator reports the excess as a funding surplus note but keeps out-of-pocket cost at zero. Refundable deposits, future inflation, exchange-rate changes, tax on salaries, foregone earnings and research-only budgets are excluded unless the user has already included them in the annual inputs. Research allowances that cannot legally be spent on personal living costs should not be entered as stipend cash. Official salary figures shown in the country table are gross where the source describes them as gross; the calculator instead asks salaried candidates for take-home annual pay so the formula does not confuse payroll cost with spendable money.

The country table prioritises national government, national research-funder, official study portal and university sources. When no defensible single national PhD package exists, it uses a clearly labelled official scholarship or institutional employment example rather than manufacturing a country-wide average. The table is therefore a comparison framework, while the calculator is the offer-specific cost estimate.

Official Sources

  1. [S1] UKRI – Guidance for training grant holders
  2. [S2] Australian Government Department of Education – Research Training Program
  3. [S3] DAAD – How to finance your PhD
  4. [S4] Campus France – Tuition fees in France
  5. [S5] Campus France – How to finance a Doctorate in France
  6. [S6] University of Amsterdam – Current fully funded PhD employment example
  7. [S7] FWO – PhD Fellowship fundamental research
  8. [S8] University Admissions Sweden – Who is required to pay fees?
  9. [S9] Uppsala University – Salary agreement for doctoral students
  10. [S10] Study in Norway – Cost and requirements
  11. [S11] Study in Denmark – PhD programmes
  12. [S12] Study in Finland – Doctoral Funding
  13. [S13] Study in Finland – Fees and Cost of Living
  14. [S14] FWF – Personnel Costs and Salary Rates 2026
  15. [S15] Study in Austria – Tuition fees
  16. [S16] Swiss National Science Foundation – Salary increase for doctoral students
  17. [S17] Research Ireland – Government of Ireland Postgraduate Scholarship Programme
  18. [S18] NSERC – Canada Graduate Research Scholarship – Doctoral program
  19. [S19] EduCanada – Study costs for international students in Canada
  20. [S20] U.S. National Science Foundation – Graduate Research Fellowship Program
  21. [S21] University of Auckland – Doctoral Scholarships
  22. [S22] University of Auckland – Doctoral fees
  23. [S23] Study in Japan – Japanese Government (MEXT) Scholarship
  24. [S24] Study in Japan – Academic Fees
  25. [S25] Study in Korea – Scholarships
  26. [S26] NUS Graduate School – NUS Research Scholarship
.cts-result-popup[hidden] { display: none; }.cts-result-popup { position: fixed; inset: 0; z-index: 999999; display: grid; place-items: center; padding: 16px; }.cts-result-popup-backdrop { position: absolute; inset: 0; background: rgba(15, 23, 42, 0.62); }.cts-result-popup-panel { position: relative; z-index: 1; width: min(100%, 520px); max-height: calc(100vh – 32px); overflow: auto; padding: 22px; border: 1px solid rgba(22, 163, 74, 0.32); border-radius: 18px; background: #ecfdf3; color: #14532d; box-shadow: 0 24px 70px rgba(15, 23, 42, 0.26); }.cts-result-popup-close { position: absolute; top: 10px; right: 12px; border: 0; background: transparent; color: inherit; font: inherit; font-size: 26px; line-height: 1; cursor: pointer; }.cts-result-popup-status { margin: 0 36px 6px 0; font-weight: 700; }body.cts-popup-open { overflow: hidden; }@media (max-width: 480px) { .cts-result-popup { padding: 12px; }.cts-result-popup-panel { width: 100%; max-height: calc(100vh – 24px); padding: 18px; border-radius: 15px; } } (function () { ‘use strict’;var TOOL_SELECTOR = ‘.cts-calculator[data-cts-engine=”local”]’ + ‘[data-cts-tool-type=”local-pairwise-country”]’;function setOutput(root, key, value) { var output = root.querySelector( ‘[data-cts-local-output=”‘ + key + ‘”]’ );if (output) { output.textContent = value; } }function formatMoney(value, currency) { if (!Number.isFinite(value)) { return ‘—’; }try { return new Intl.NumberFormat(‘en’, { style: ‘currency’, currency: currency, maximumFractionDigits: 0 }).format(value); } catch (error) { return currency + ‘ ‘ + Math.round(value).toLocaleString(‘en’); } }function clearErrors(root) { var fields = root.querySelectorAll( ‘[data-cts-local-input]’ );var alertBox = root.querySelector( ‘[data-cts-local-alert]’ );Array.prototype.forEach.call( fields, function (field) { field.classList.remove( ‘cts-field-error’ );field.removeAttribute( ‘aria-invalid’ ); } );if (alertBox) { alertBox.textContent = ”;alertBox.classList.remove( ‘cts-alert-error’ );alertBox.classList.remove( ‘cts-alert-success’ ); } }function showErrors(root, errors) { var alertBox = root.querySelector( ‘[data-cts-local-alert]’ );var firstField = null;errors.forEach(function (item) { if (item.field) { item.field.classList.add( ‘cts-field-error’ );item.field.setAttribute( ‘aria-invalid’, ‘true’ );if (!firstField) { firstField = item.field; } } });if (alertBox) { alertBox.textContent = errors[0].message;alertBox.classList.add( ‘cts-alert-error’ );alertBox.classList.remove( ‘cts-alert-success’ ); }if (firstField) { firstField.focus(); } }function readInputs(root) { var country = root.querySelector( ‘[data-cts-local-input=”country”]’ );var tuition = root.querySelector( ‘[data-cts-local-input=”tuition”]’ );var living = root.querySelector( ‘[data-cts-local-input=”living”]’ );var funding = root.querySelector( ‘[data-cts-local-input=”funding”]’ );var waiver = root.querySelector( ‘[data-cts-local-input=”waiver”]’ );var currency = root.dataset.ctsCurrency;if (country) { if (country.selectedIndex >= 0) { var selectedOption = country.options[ country.selectedIndex ];if (selectedOption) { if ( selectedOption.dataset.currency ) { currency = selectedOption.dataset.currency; } } } }return { countryField: country, tuitionField: tuition, livingField: living, fundingField: funding, waiverField: waiver, country: country ? country.value : ”, tuition: tuition ? tuition.value : ”, living: living ? living.value : ”, funding: funding ? funding.value : ”, waiver: waiver ? waiver.value : ”, currency: currency }; }function validateRequiredNumber( field, rawValue, label, errors ) { if (!field) { errors.push({ field: null, message: label + ‘ is unavailable in this calculator.’ });return null; }if (rawValue === ”) { errors.push({ field: field, message: ‘Enter ‘ + label.toLowerCase() + ‘.’ });return null; }var value = Number(rawValue);if (!Number.isFinite(value)) { errors.push({ field: field, message: ‘Enter a valid number for ‘ + label.toLowerCase() + ‘.’ });return null; }if (value < 0) { errors.push({ field: field, message: label + ' cannot be negative.' });return null; }return value; }function getCountryNote(country) { switch (country) { case 'united-kingdom': return 'UKRI-funded studentships can combine a stipend with a fee contribution, but international fee gaps can remain.';case 'australia': return 'RTP packages can combine a stipend, fee offset and allowances. Enter only the components included in your actual offer.';case 'germany': return 'Public-university doctoral tuition is usually low or zero in the early years, so living costs and funding structure often drive the comparison.';case 'france': return 'Public doctoral tuition is low relative to many destinations, so monthly funded income versus living costs is often the key comparison.';case 'netherlands': return 'Many advertised PhD places are employment contracts. Use take-home cash, not gross salary, as annual funding.';case 'belgium': return 'Funding terms differ by community and funder. The FWO figure in the table is a Flanders fellowship reference.';case 'sweden': return 'Doctoral tuition is exempt, and many doctoral candidates are employed. Enter spendable annual pay after tax.';case 'norway': return 'Doctoral candidates are normally tuition-exempt at public institutions, so living costs can be the main self-funded burden.';case 'denmark': return 'Many funded PhD routes are salaried employment. Enter annual take-home cash rather than a gross payroll figure.';case 'finland': return 'Doctoral tuition is zero, but living costs still need funding when no paid doctoral position is secured.';case 'austria': return 'Employment income and tuition status are separate cost layers. Enter both from your actual offer and enrolment category.';case 'switzerland': return 'Funded doctoral posts are often salaried. Use annual net cash after tax and check host-specific tuition separately.';case 'ireland': return 'National scholarships can combine stipend, fee contribution and research costs. Count only personal cash and actual fee offsets here.';case 'canada': return 'Funding packages and tuition vary by institution. Treat national scholarships as benchmarks, not as universal PhD offers.';case 'united-states': return 'Assistantships and fellowships vary widely. Do not assume one national stipend or tuition waiver from a single fellowship benchmark.';case 'new-zealand': return 'Doctoral tuition and scholarships depend on institution and eligibility. Use the exact terms attached to your place and scholarship.';case 'japan': return 'MEXT can combine stipend support with tuition relief, while self-funded academic fees vary by institution type.';case 'south-korea': return 'GKS and university packages can cover different cost components. Use the exact award letter rather than a generic scholarship label.';case 'singapore': return 'Research scholarships can combine stipend and tuition support, with rates varying by university and student status.';default: return 'Use the exact tuition, living-cost and funding figures from your doctoral offer.'; } }function resetOutputs(root) { setOutput( root, 'self-funded-base', '—' );setOutput( root, 'cash-funding', '—' );setOutput( root, 'fee-waiver', '—' );setOutput( root, 'funded-gap', '—' );setOutput( root, 'self-funded', '—' );setOutput( root, 'funded-out', '—' );setOutput( root, 'funding-advantage', '—' );setOutput( root, 'country-note', '' );setOutput( root, 'surplus-note', '' ); }function openPopup(root) { var popup = root.querySelector( '[data-cts-result-popup]' );var heading = root.querySelector( '#phd-result-title-2026' );if (!popup) { return; }popup.hidden = false;document.body.classList.add( 'cts-popup-open' );if (heading) { window.setTimeout( function () { heading.focus(); }, 0 ); } }function closePopup( root, restoreFocus ) { var popup = root.querySelector( '[data-cts-result-popup]' );var action = root.querySelector( '[data-cts-local-action="calculate"]' );if (popup) { popup.hidden = true; }var remainingPopup = document.querySelector( '.cts-result-popup:not([hidden])' );if (!remainingPopup) { document.body.classList.remove( 'cts-popup-open' ); }if (restoreFocus) { if (action) { action.focus(); } } }function validateAndCalculate(root) { clearErrors(root);var data = readInputs(root); var errors = [];if (!data.countryField) { errors.push({ field: null, message: 'Country selection is unavailable.' }); } else { if (data.country === '') { errors.push({ field: data.countryField, message: 'Select a country.' }); } }var tuition = validateRequiredNumber( data.tuitionField, data.tuition, 'Annual tuition and mandatory fees', errors );var living = validateRequiredNumber( data.livingField, data.living, 'Annual living and study costs', errors );var funding = validateRequiredNumber( data.fundingField, data.funding, 'Annual stipend or take-home PhD pay', errors );var waiver = 0;if (data.waiverField) { if (data.waiver !== '') { var waiverValue = Number(data.waiver);if ( !Number.isFinite( waiverValue ) ) { errors.push({ field: data.waiverField, message: 'Enter a valid number for the tuition or fee waiver.' }); } else { if (waiverValue tuition) { errors.push({ field: data.waiverField, message: ‘The tuition or fee waiver cannot exceed annual tuition and mandatory fees.’ }); } }if (errors.length > 0) { showErrors( root, errors );return; }if ( !Number.isFinite( tuition ) ) { showErrors( root, [{ field: data.tuitionField, message: ‘Enter a valid annual tuition amount.’ }] );return; }if ( !Number.isFinite( living ) ) { showErrors( root, [{ field: data.livingField, message: ‘Enter a valid annual living-cost amount.’ }] );return; }if ( !Number.isFinite( funding ) ) { showErrors( root, [{ field: data.fundingField, message: ‘Enter a valid annual funding amount.’ }] );return; }var selfFunded = tuition + living;var totalFunding = funding + waiver;var fundedRaw = selfFunded – totalFunding;var fundedOut = Math.max( 0, fundedRaw );var fundingAdvantage = selfFunded – fundedOut;var surplus = Math.max( 0, totalFunding – selfFunded );if ( !Number.isFinite( selfFunded ) ) { showErrors( root, [{ field: data.tuitionField, message: ‘The entered values are too large to calculate safely.’ }] );return; }if ( !Number.isFinite( fundedOut ) ) { showErrors( root, [{ field: data.fundingField, message: ‘The entered values are too large to calculate safely.’ }] );return; }setOutput( root, ‘self-funded-base’, formatMoney( selfFunded, data.currency ) );setOutput( root, ‘cash-funding’, formatMoney( funding, data.currency ) );setOutput( root, ‘fee-waiver’, formatMoney( waiver, data.currency ) );setOutput( root, ‘funded-gap’, formatMoney( fundedOut, data.currency ) );setOutput( root, ‘self-funded’, formatMoney( selfFunded, data.currency ) );setOutput( root, ‘funded-out’, formatMoney( fundedOut, data.currency ) );setOutput( root, ‘funding-advantage’, formatMoney( fundingAdvantage, data.currency ) );setOutput( root, ‘country-note’, getCountryNote( data.country ) );if (surplus > 0) { setOutput( root, ‘surplus-note’, ‘Funding exceeds the annual costs you entered by ‘ + formatMoney( surplus, data.currency ) + ‘.’ ); } else { setOutput( root, ‘surplus-note’, ‘No funding surplus remains after the annual costs you entered.’ ); }var alertBox = root.querySelector( ‘[data-cts-local-alert]’ );if (alertBox) { alertBox.textContent = ‘Comparison calculated. Review the results.’;alertBox.classList.remove( ‘cts-alert-error’ );alertBox.classList.add( ‘cts-alert-success’ ); }root.dataset.ctsDirty = ‘0’; root.dataset.ctsHasResult = ‘1’;var action = root.querySelector( ‘[data-cts-local-action=”calculate”]’ );if (action) { action.textContent = ‘Compare Funding Costs’; }openPopup(root); }function markDirty(root) { root.dataset.ctsDirty = ‘1’;closePopup( root, false );clearErrors(root);if ( root.dataset.ctsHasResult === ‘1’ ) { resetOutputs(root);var action = root.querySelector( ‘[data-cts-local-action=”calculate”]’ );if (action) { action.textContent = ‘Recalculate’; } } }function resetTool(root) { var inputs = root.querySelectorAll( ‘input[data-cts-local-input]’ );var selects = root.querySelectorAll( ‘select[data-cts-local-input]’ );Array.prototype.forEach.call( inputs, function (input) { input.value = ”; } );Array.prototype.forEach.call( selects, function (select) { select.selectedIndex = 0; } );clearErrors(root);closePopup( root, false );resetOutputs(root);root.dataset.ctsDirty = ‘0’; root.dataset.ctsHasResult = ‘0’;var action = root.querySelector( ‘[data-cts-local-action=”calculate”]’ );if (action) { action.textContent = ‘Compare Funding Costs’; } }function bindPopupEvents(root) { var closeButtons = root.querySelectorAll( ‘[data-cts-popup-close]’ );Array.prototype.forEach.call( closeButtons, function (button) { button.addEventListener( ‘click’, function () { closePopup( root, true ); } ); } );document.addEventListener( ‘keydown’, function (event) { if ( event.key === ‘Escape’ ) { var popup = root.querySelector( ‘[data-cts-result-popup]’ );if (popup) { if (!popup.hidden) { closePopup( root, true ); } } } } ); }function initTool(root) { if ( root.dataset.ctsLocalInitialized === ‘1’ ) { return; }root.dataset.ctsLocalInitialized = ‘1’;root.dataset.ctsHasResult = ‘0’;var calculateButton = root.querySelector( ‘[data-cts-local-action=”calculate”]’ );var resetButton = root.querySelector( ‘[data-cts-local-action=”reset”]’ );var inputs = root.querySelectorAll( ‘[data-cts-local-input]’ );if (calculateButton) { calculateButton.addEventListener( ‘click’, function () { validateAndCalculate( root ); } ); }if (resetButton) { resetButton.addEventListener( ‘click’, function () { resetTool(root); } ); }Array.prototype.forEach.call( inputs, function (input) { input.addEventListener( ‘input’, function () { markDirty(root); } );input.addEventListener( ‘change’, function () { markDirty(root); } ); } );bindPopupEvents(root);resetOutputs(root); }function initAll() { var tools = document.querySelectorAll( TOOL_SELECTOR );Array.prototype.forEach.call( tools, function (root) { initTool(root); } ); }if ( document.readyState === ‘loading’ ) { document.addEventListener( ‘DOMContentLoaded’, initAll ); } else { initAll(); }document.addEventListener( ‘DOMContentLiteSpeedLoaded’, initAll ); }());
📌

Complete guide: Tuition Fees