Estimate per-student pricing to reach your target income. All calculations stay on this page.
This calculator runs entirely in your browser. There are no sign-ins, accounts, or background network calls. Everything
you type stays on this page. By default the only thing saved between visits is your light/dark mode preference
(course-pricing-theme). If you turn on “Remember my inputs,” the calculator also stores your latest form values
(course-pricing-saved-inputs) plus a small flag (course-pricing-save-enabled) in local storage. Switch it
off or press “Reset to defaults” to remove them instantly.
When you export results, the CSV file is generated on your device: the app assembles the rows, wraps them in a
Blob, spawns a temporary download link, clicks it for you, and immediately cleans it up again, so nothing
leaves your device. Want to dig deeper? The full source code is available on
GitHub, review it yourself or with a
developer you trust to confirm exactly how the site works.
Exporting your calculator setup works the same way: clicking “Export JSON” bundles every field, toggle, and layout preference into a
.json file in your browser. Keep that file wherever you like, then use “Import JSON” later to apply the exact same settings on this
or another device. Imports only touch local storage if you tell the app to remember inputs; otherwise everything stays in memory for the current session.
course-pricing-theme, plus course-pricing-saved-inputs and
course-pricing-save-enabled only if you enabled “Remember my inputs.” Toggle it off or use “Reset to
defaults” to clear the extra entries.
fetch, XMLHttpRequest, or
navigator.sendBeacon. You’ll only find localStorage.getItem/setItem for the theme
preference and the optional saved inputs toggle.
| Line item | Per student | Per lesson |
|---|
Enter the class mix you want to showcase and we’ll assemble an accountant-style monthly report.