Ear Trainer

Getting Started

Welcome. This is a small app for training your musical ear: hearing the distance between two notes, the quality of a chord, and (eventually) producing those sounds with your own voice. It runs in your web browser, no install needed, and the audio you'll hear is real piano samples.

This guide will walk you through your first session and explain a little music theory along the way. You don't need to read it cover to cover. Skim what you need, skip what you don't.

Quick start (60 seconds)

  1. Open the app in your web browser. Wait a few seconds for the message "Loading piano samples…" to disappear.
  2. Make sure your computer's volume is up and your speakers or headphones are working.
  3. Open the Reference panel first. On Level 1 (the default), you'll see a green ↓ caption that says "New here? Open the Reference section first…" — click that section open. Try clicking a few interval names (Major 3rd, Perfect 5th, Octave) to hear what each one sounds like. This gets your ear oriented before you start being quizzed.
  4. Now click the green ▶ Play button under the "Guess The Interval" heading. You'll hear two piano notes played one after the other.
  5. Underneath, you'll see buttons for each interval (Minor 2nd, Major 2nd, Minor 3rd, etc.). Click whichever one you think you heard.
  6. The app tells you if you were right or wrong. If right, the next question plays automatically. If wrong, listen again with the ↻ Repeat Last button.

That's the basic loop. The rest of this guide explains everything else.

If you see a "Tap any button to start audio" banner

On iPhones, iPads, and some Mac browsers, the audio system stays asleep until you interact with the page. If you press Play before the app has been "woken up," nothing seems to happen — no sound, no feedback. To prevent that confusion, the app shows a prominent banner if it detects that the audio isn't ready: "Tap any button to start audio."

If you see it: just tap or click anywhere on the page (a level tab, the Play button, the Reference panel — anything counts). The banner disappears and audio works normally from then on. This only happens once per session, not before every question.

This is not a bug. It's how Apple's audio rules work — browsers must wait for explicit user interaction before allowing audio playback, to prevent autoplaying ads and other annoyances. The banner is there to tell you what to do rather than leaving you wondering why Play didn't work.

The four levels at a glance

The app is organized into four levels, shown as tabs across the top:

You can move between levels freely. They each have their own score, so working in Level 2 doesn't affect your Level 1 progress, and vice versa. There's no "unlocking" — visit any level whenever you want.

The intended progression is roughly Level 1 → Level 2 → Level 3 → Level 4, but many musicians benefit from doing all of them in any session. Use what serves you.

A little music theory you'll want to know about intervals

If you're new to formal music theory, two concepts will get you through Level 1. If you already know these, skip ahead to Level 1.

Pitch and notes

Music is built from notes — specific pitches like C, D, E, F, G, A, B. After B, the cycle repeats: the next C is called the same name but is one octave higher. A piano keyboard makes this visible — each white key has a name (CDEFGAB), and the pattern repeats up and down the keyboard.

Between most adjacent white keys, there's a black key. Each adjacent pair of keys (white-to-black, or in two places, white-to-white) is called a half step or semitone. The whole keyboard is divided into these equal half steps — twelve of them per octave.

Intervals

An interval is the distance between two notes, measured in half steps. Some have evocative names; some are just numbered:

Hearing which interval is which is what Level 1 trains.

Some other ways you might see these notated

The names above are the conventions this app uses. In real-world sheet music, lead sheets, and theory textbooks, you'll occasionally see the same intervals labeled differently. The Tritone in particular has a long history of being called many things:

Level 1 · Intervals

What it teaches

Recognizing intervals by ear — the foundational ear training skill. Most other skills (melody dictation, chord recognition, transcription, improvisation) build on this.

Layout

From top to bottom, Level 1 is laid out like this:

The loop

  1. Press ▶ Play. Two notes play.
  2. Click one of the answer buttons (Minor 2nd, Major 2nd, etc.).
  3. Right? It auto-advances to a new question after about a second. Wrong? It tells you what it actually was, and waits for you to continue.
  4. ↻ Repeat Last plays the most recent interval again. Especially useful after a wrong answer, when you now know what to listen for.
  5. Skip → generates a new question without grading the current one.
  6. Reveal Answer plays the correct interval and flashes its name green. Use this when you've genuinely tried and just can't get it — better to learn what it was than be stuck. It counts as a wrong answer in the score (since you didn't really get it right by revealing). New in v0.10.0.

The two playback modes

Selected from the MODE row at the top:

Start with melodic. Move to harmonic once you're scoring well.

Direction (melodic only)

From the INTERVAL DIRECTION row, when in melodic mode:

Descending is harder than ascending for most people. Worth practicing both. Mixed is the realistic test once you're confident in each separately.

Settings: Interval Quiz Choices

At the bottom of Level 1, there's a panel called "Interval Quiz Choices." Open it to see a row of small buttons (called "chips" in the app) — one for each interval. Toggle them on or off to control which intervals appear in the quiz.

Recommended starting pool: just Perfect 5th, Major 3rd, Minor 3rd, and Octave. These four are the most distinct and the easiest to learn. Once you can distinguish them reliably (say, 8 out of 10 right), add the next set: Perfect 4th and Major 6th. Build up gradually. Trying to learn all 12 at once is a recipe for frustration.

The Reference panel

This panel sits above the quiz, with a green ↓ caption drawing attention to it on first visit. Open it and click any interval to hear it. The Reference is for learning the sound of an interval, separate from the quiz — no scoring, no time pressure.

The Reference panel has two main controls:

Keyboard shortcuts on Level 1

Space (Play), R (Repeat Last), S (Skip), A (Reveal Answer), 1–9 (pick the Nth answer). See the consolidated Keyboard shortcuts section below for all levels in one place.

A little music theory you'll want to know about triads

Before Level 2 quizzes you on triads, here's what they actually are — and how the four qualities differ in sound.

What's a triad?

A triad is a three-note chord built by stacking two intervals above a root note. Almost all "chords" in popular music start life as triads — even when extra notes get layered on later, the triad is the foundation.

The four triad qualities the app quizzes you on:

Inversions

The same three notes of a triad can be arranged with any of them on the bottom. Take a C major triad — C, E, G. The three arrangements:

It's still the "same chord" — but each inversion has a different sound character. Inversions are how composers create smooth voice leading between chords, and how bassists make a progression feel like it's moving rather than jumping. Hearing which inversion is being played is part of what Level 2 trains.

Some other ways you might see these notated

Level 2 · Triads

What it teaches

Recognizing the quality of a triad (major / minor / diminished / augmented) and which inversion it's in. This is the foundation for hearing chord progressions in real music.

Layout

Same general shape as Level 1, with chord-specific labels:

The loop

  1. Press ▶ Play. Three notes play (either at once or in sequence).
  2. Pick a chord quality from the Chord Quality row.
  3. Pick an inversion from the Chord Inversion row.
  4. Click Submit Answer (or press Enter).
  5. The app tells you if you got it right. If you got part of it right (quality but not inversion, or vice versa), it'll tell you which.

You can change your picks before submitting. Clear Picks resets both selections. Reveal Answer (new in v0.10.0) plays the correct triad and highlights both axes — counts as a wrong answer in your score, but lets you learn from a question that's stumping you.

The two playback modes

Most people find arpeggiated easier for inversions and blocked easier for quality. Switch between them depending on what you're working on.

Direction (arpeggiated only)

Same options as Level 1 — Ascending, Descending, Mixed. In blocked mode, direction is meaningless and the controls are dimmed.

The Triad Quiz Choices panel

At the bottom of Level 2, this panel (formerly called "Triad Focus") has two sets of toggleable chips:

This is your practice focus tool. Want to drill just major vs minor in root position? Turn off everything else. Want to focus on identifying inversions of a specific quality? Same idea — narrow the pool.

The Reference panel

Same idea as Level 1's Reference, sitting above the quiz, but with one button per combination of quality and inversion (so 6 buttons with just major/minor, 12 if all four qualities are on). Click any to hear that specific voicing. The same Fixed/Random root control is here, with Fixed at C4 by default.

Keyboard shortcuts on Level 2

Space (Play), R (Repeat Last), S (Skip), A (Reveal Answer), Enter (Submit Answer). See the consolidated Keyboard shortcuts section below for all levels in one place.

Level 3 · Sing-First

What it teaches

Producing intervals and chord tones with your voice. This is a fundamentally different skill than recognition — and it's how working musicians (singers especially, but also instrumentalists) develop deep internalization of musical sounds. If you can sing it, you really know it.

Layout

Level 3 has a different shape from Levels 1 and 2 because the workflow is different — there's no recognition quiz, just structured singing practice. From top to bottom:

There's no Reference panel on Level 3 — the Target picker plays a similar role, but it's required (you can't practice without picking something) rather than exploratory.

The loop

  1. Pick a target — for example, "Perfect 5th" — from the practice settings panel below.
  2. Press ▶ Play Root. You'll hear one piano note. That's your reference root.
  3. A countdown begins (default 5 seconds). During the countdown, sing up the interval from the root note. For a Perfect 5th from a root of C, you'd sing up to G.
  4. When the countdown hits zero, the app plays the actual root + the target note so you can verify whether you sang the right pitch.
  5. Click ✓ Got It if you sang it accurately, ✕ Missed It if not. Be honest with yourself; nobody's grading you but you.
  6. Press ↻ New Root, Same Target to try the same interval from a different starting note.

Why this matters

The recognition skill (Levels 1 and 2) trains your ear to receive. Sing-first trains your ear to generate. Most professional musicians will tell you that being able to produce an interval on demand is the deeper skill. It's how you internalize that "Perfect 5th" isn't just a label but a felt sound you can summon.

The two content modes

At the top of Level 3, choose:

Practice settings

Tips for sing-first practice

Keyboard shortcuts on Level 3

Space (Play Root), T (Play Target Now), G (Got It), M (Missed It). See the consolidated Keyboard shortcuts section below for all levels in one place.

A little music theory you'll want to know about sevenths

A seventh chord is a four-note chord — a triad plus one more note stacked on top, a 7th above the root. That fourth note transforms the chord's character, adding color and tension to the simpler triad underneath. Seventh chords are the harmonic vocabulary of jazz, R&B, gospel, modern pop, and almost any music that wants to sound more sophisticated than three chords and a campfire.

The five seventh-chord qualities Level 4 quizzes you on, each with its own emotional flavor:

Major 7th (maj7) 🌅

Formula: Major Triad + Major 7th

Minor 7th (min7) 🌙

Formula: Minor Triad + Minor 7th

Dominant 7th (7) ⚡

Formula: Major Triad + Minor 7th

Half-Diminished 7th (m7♭5 or ø7) 🎭

Formula: Diminished Triad + Minor 7th

Fully Diminished 7th (dim7 or °7) 👻

Formula: Diminished Triad + Diminished 7th

Some other ways you might see these notated

The notations above are the conventions this app uses. In real sheet music, lead sheets, and theory books, you'll see other shorthand:

You'll get used to the alternate notations the more sheet music you read. The chord itself is the same regardless of how it's spelled.

Inversions of 7th chords

Like triads, seventh chords can be played in inversions — with any of the four notes on the bottom instead of the root. A four-note chord has four positions:

The third inversion (7th on the bottom) gives a particularly unstable, restless sound — the chord is basically standing on its head. Hearing which inversion is being played is part of what Level 4 trains.

Level 4 · 7th Chords

What it teaches

Recognizing the quality of a seventh chord (major 7, minor 7, dominant 7, half-diminished, fully diminished) and which inversion it's in. Seventh chords are the harmonic foundation of jazz, R&B, most modern pop, and a huge amount of classical music. If you can hear sevenths, you can hear almost everything that's happening harmonically in real music.

Layout

Same general shape as Level 2, with seventh-specific labels:

The loop

  1. Press ▶ Play. Four notes play (either at once or in sequence).
  2. Pick a chord quality from the Chord Quality row.
  3. Pick an inversion from the Chord Inversion row.
  4. Click Submit Answer (or press Enter).
  5. The app tells you if you got it right. If you got part of it right (quality but not inversion, or vice versa), it'll tell you which.

You can change your picks before submitting. Clear Picks resets both selections. Reveal Answer plays the correct seventh chord and highlights both axes — counts as a wrong answer in your score, but lets you learn from a question that's stumping you.

The two playback modes

Most people find arpeggiated easier for inversions and blocked easier for quality. Use whichever serves what you're practicing.

Direction (arpeggiated only)

Same options as Levels 1 and 2 — Ascending, Descending, Mixed. In blocked mode, the direction controls are dimmed.

The 7th Chord Quiz Choices panel

At the bottom of Level 4, this panel has three sets of toggleable controls:

The Reference panel

Same idea as Levels 1 and 2's Reference, sitting above the quiz. One button per combination of quality and inversion, in the currently-selected voicing. Click any to hear that specific chord. Fixed/Random root works the same way, with Fixed at C4 by default.

Keyboard shortcuts on Level 4

Space (Play), R (Repeat Last), S (Skip), A (Reveal Answer), Enter (Submit Answer). See the consolidated Keyboard shortcuts section below for all levels in one place.

Keyboard shortcuts

Inside the app, there's a Keyboard shortcuts disclosure between the title and the level tabs at the top of the page. Click it to expand. Its contents update automatically when you switch levels — so you only ever see the shortcuts that apply right now. (In earlier versions, each level had its own keyboard-shortcuts panel; v0.9.0 consolidates them into one.)

For reference, here are the shortcut sets for all four levels:

Level 1 · Intervals

  • SpacePlay / next question
  • RRepeat Last
  • SSkip
  • AReveal Answer (new in v0.10.0)
  • 1, 2, 3…Pick the Nth visible answer button

Level 2 · Triads

  • SpacePlay / next question
  • RRepeat Last
  • SSkip
  • AReveal Answer (new in v0.10.0)
  • EnterSubmit Answer

Level 3 · Sing-First

  • SpacePlay Root
  • TPlay Target Now (skip the wait)
  • GGot It
  • MMissed It

Level 4 · 7th Chords

  • SpacePlay / next question
  • RRepeat Last
  • SSkip
  • AReveal Answer (new in v0.10.0)
  • EnterSubmit Answer

Screen reader users — see the Accessibility features section below for important notes about putting your screen reader into focus mode before using these shortcuts.

Tips for effective practice

Accessibility features

The app is built with accessibility as a priority:

Using a screen reader?

This app uses single-letter shortcuts (R, S, T, G, M, Space) for quick actions. Most screen readers also use these letters to navigate by region, heading, or button. To use the app's shortcuts, switch your screen reader into focus mode (sometimes called forms mode or pass-through mode):

NVDA
press NVDA key + Space to toggle focus mode
JAWS
press Insert + Z to toggle the virtual cursor off
VoiceOver (Mac)
press Control + Option + Shift + Down Arrow to interact with the page
Narrator (Windows)
press Caps Lock + Spacebar to toggle scan mode off

When you're done practicing, switch back to your normal browse mode to navigate the rest of the web.

A reminder of this is also available inside the app — there's a "Keyboard shortcuts" disclosure at the top of the page (between the title and the level tabs) that lists the shortcuts for whichever level you're currently on, and includes a brief screen-reader note.

If you find an accessibility issue, please report it — these features have been designed thoughtfully but real-world testing always finds gaps.

Credits and licensing

This app builds on two pieces of free, openly-licensed work by other people. v0.10.0 brings their attribution out of the source code and into the open as it should be.

Salamander Grand Piano V3 · Alexander Holm

The piano sounds you hear are samples from the Salamander Grand Piano V3 by Alexander Holm — recordings of a Yamaha C5 grand piano made with two AKG C414 microphones positioned about 12cm above the strings. The library was originally sampled at every minor third from the lowest A, in 16 velocity layers, and then made freely available under Creative Commons Attribution 3.0 (CC BY 3.0).

The version this app uses is hosted by the Tone.js project in MP3 form for fast browser loading. From v0.10.0, the app loads 30 source samples (every minor third from A0 to C8), matching the recording grid. Earlier versions loaded only 11 samples, which produced subtle pitch-shift artifacts on notes far from a sampled root — feedback from a concert pianist prompted the upgrade.

Tone.js · Yotam Mann

Tone.js is a Web Audio framework created by Yotam Mann that handles loading the piano samples, scheduling notes, managing the audio context across browsers, and a great deal of audio plumbing this app would otherwise have to write from scratch. It's released under the MIT License, which doesn't strictly require visible attribution but it's good manners to give credit where it's due.

About this app

The app itself is by Rick at PostHaste Media — a small, handmade ear training tool for the curious. The code is open and lives at github.com/filmnoises/Ear-Training. Issues and suggestions welcome there.


A final note

Ear training is a slow build. Don't expect to be hearing complex chord qualities perfectly after a week — most musicians take months or years to internalize this stuff deeply. The goal isn't to get a high score; it's to gradually grow a more accurate, more flexible musical ear. Some sessions you'll feel sharp. Others you won't. Both are part of the process.

Have fun with it.