Sign In
Accounts are for adults only (18 or older): teachers, parents, studio owners, and adult learners. Students never make accounts here. They join your class with a code.
Your name and email, that is it. Sign up with Google or with a password. Everything runs in the browser: nothing to install on any computer, even a school Chromebook.
One account, every tool. Classroom, Private Studio, and My Piano live as tabs at the top of your dashboard: teach a class, run your studio, or learn it yourself, and switch hats any time. Nothing to pick now, nothing to outgrow later.
Need an account? Get your founder license
Free, no account: 🎯 Walk-By Piano · a note on the staff, find the key, twenty secrets 🎼 Note Visualizer · any key becomes real notation
School students never sign in; they join at the join page with your class code. By creating an account you accept the Terms of Use & License Agreement (no copying, sharing, or reselling access) and acknowledge the Student Data Privacy Policy. Questions? See the Help & FAQ page.
⌂ Home · where are you headed?
Pick a lane and you see only what that lane needs. Everything else waits behind 🗂 Everything.
🆕 What's new
Newest first. Each one is live in the app today.
You got in at exactly the right moment
You hold a founder license at a price nobody after you will ever see. Your classroom works today: run lessons on the big screen, lock the settings, upload your own assignments, and let the Assignment Brain turn a screenshot or a sentence into something playable. That is all yours right now.
And here is the part that makes founders the lucky ones. This curriculum is grown by a working piano teacher: 20+ years, thousands of students, built and tested in my own studio and with my own kids, and it grows every single week. New lessons, new drills, and every upgrade land in your account automatically, at the price you already locked in. Founder requests go to the front of the build line, so tell me what you want next.
Want a real say in where this goes? The community is where it happens. I send the invites by hand, so watch for an email from me each night and grab your spot when it lands.
License
📊 At a Glance
🔥 Today's Lessons
The walk-in-the-door button. It remembers where every class left off, so you do not have to: one tap starts the next lesson and puts the code on the board, fullscreen. 🔔 Bell Work reviews the last lesson while you take attendance. 🎟 Exit Ticket re-runs today's lesson as a check for understanding: fire it 5 minutes before the bell, and spend the last 3 on something they win, so they walk out feeling successful. Want your hand held instead?
🏫 My Classes
Open a class to see its students; click a student to see everything they have done. Every session you run for a class attaches to its students for good, and when the school year turns over, archive last year's class: its history stays forever and the class list starts clean. Students never make accounts: they pick their name from the class list when they join (plus a PIN if you set one).
+ Add a class · founders get up to 10 active classes
Tip for next year: put the school year in the name (like "Period 1 · 2026-27"), so years stay easy to tell apart.
🧭 Student journey
One student at a time: tap a name, see where they are, pick what comes next, decide how, and let the app suggest what to plan after that. Teach it live on the spot or send it home under their code.
❓ Teaching with Piano Professor
How private teachers fold it into lessons without losing the thing only a teacher can do.
🎹 Private Studio
For your private-lesson students, separate from classes. Each student gets one personal code, forever: hand it out once, and every assignment you ever give them simply appears when they enter it at pianoprofessor.app/join. No new codes, no expirations, nothing else to manage. Assign different work to different students, pause anything and resume it later, and their grades land here: you always see the highest score and how many tries it took.
Your studio · set it up once
🏷 Name it and claim your front door · optional · your brand, not ours
Set this and your students see your studio's name instead of Piano Professor: on the join page, in the game, on the tab. To them the app is part of your lessons. Clear it to go back to Piano Professor branding.
With a handle claimed, that link opens the join page already wearing your studio's name, before a single code is typed. Hand THAT link to students and parents.
Your students · one personal code each, forever
Pick the work, check one student or ten, press Assign: everyone checked gets their own copy in one click. It appears under their personal codes instantly. Drills and MIDI pieces ignore the middle picker.
🎯 Practice expectation · optional · targets, never gates
Leave anything blank to skip it. The student sees the goal and their progress behind their code; the app never blocks extra practice. For a student's every-week routine, use 📌 Routine on their row instead.
🔒 Play settings for this assignment · optional · default is the student's choice
👥 Your studio students · click to collapse
Start a Class Session
Who, what, how, a note, an expiry: one question per screen, then the code goes on the board. Want every option on one page instead? Open the full form below.
🗂 The full form · every option on one page
Perfect for a class walking in: pick the work, get a code, put it on the board, and results appear under Results with each student's name the moment they finish. No class selected = a quick one-off code where students just type a name (no sign-in, no account). One-off codes admit up to 50 different names, so a shared code can never be flooded by strangers.
🔒 Play settings for this assignment · optional · default is the student's choice
A code with no expiration works until you press End on the session. Codes with a time limit stop working when they expire, but the session stays in your list and can be reopened. Times run on this device's clock and show in each viewer's local time.
Tip: Try it first opens the exercise exactly as your students will see it, in a new tab. Nothing is recorded and it does not create a code.
🧠 Assignment Brain NO AI · RUNS ON THIS DEVICE
Brain-dump what your students need next ("they keep missing E", "timing is shaky", "something gentle for the kid who just joined mid-year") and it matches your words against the whole curriculum, right here in your browser. Nothing you type leaves this page, no AI is involved, and there is nothing for a district to approve. You get up to three ready-to-assign picks, each with the why.
🎼 Sight-Reading Well
Fresh sight-reading that never runs out and always sounds like a song: a question phrase, an answer phrase, and a proper ending on the home note. Not random note chaos. Draw as many as you like, free, listen first, and save the keepers to your library. The try-before-assign rule still stands: you play it before any student can.
🎵 Your Songs
This is where uploads and recordings live. Every file you upload and every piece you record lands in the list below as a song, with its name. Rename it any time; assign it from the Student journey or any assign picker.
Upload sheet music once as a MIDI (.mid) or a MusicXML score (.musicxml, .xml, or compressed .mxl, whichever your notation app saved) and it stays here, ready to assign to any class. Students play it on the full grand staff at the tempo written in the file, and it grades like any lesson. XML scores keep their rests, repeats, endings, and D.C./D.S. marks. Try every piece before assigning it: the assignment picker unlocks a piece after you have opened it yourself.
🔒 Folders are private to you. The title comes from the score itself (its work or movement title, or the MIDI track name), or the file name; type one only to override it. A song leaves your shelf only when you assign it or click Publish for everyone. ⬇ Offline HTML gives you the song as one file that plays with no internet.
🎙 No file? Record a piece yourself
Plug a MIDI keyboard into this computer, set the tempo, and press Record. You get one measure of clicks to count you in, then everything you play is captured. Your playing snaps to the nearest eighth note (choose quarter notes for a simpler snap), so it comes out as clean notation even if your timing was human. Save it and it lands in your library like any uploaded piece: try it first, then assign it.
📦 Offline lesson packs
For a sub day, a snow day, or a student with no internet. The student downloads the offline shell once (one HTML file, plays with no internet, sends nothing). You make a small lesson pack here and hand it out; they open it in the shell and it becomes their routine for the day: warm-up, lesson, theory questions, a song, a rhythm drill. Each block is done at three stars, and at the end they download a report-card PNG to send you.
Build a pack
Your Sessions
Results
Deleting your account erases every class, roster label, session, grade, and uploaded piece you hold, immediately and permanently. Purchase records stay with Stripe as required for accounting; they contain no student data.