Tap the notes of a tune or a scale on the piano or guitar below (tap again to lift one), play them on a MIDI keyboard, or play them into the microphone one at a time. The scales that hold them appear as you go.
- Played
- Scale
- Fit
Letters A to G, with # or b, separated by spaces or commas. Case does not matter: bb is B-flat, b alone is B.
Scales that hold these notes
- Play at least one note.
Guitar fretboard
Standard tuning: E A D G B E
High string on top, as in tablature. One note per string at a time: tap a fret, tap the string name to switch between open (o) and muted (×). For a whole scale, the piano or a MIDI keyboard is quicker, since notes from those add up.
How the finder ranks scales
Every note you play is reduced to its pitch class (any C is a C), and each of the 180 scales below is checked for which of them it holds. Scales that hold every note come first; among those, the one with the fewest notes you did not play wins, so five notes that fit a pentatonic scale exactly rank that pentatonic above the seven-note scales that also contain them. Ties go to the scale whose root is the first note you played and the lowest one: one point each.
Worked example: play A, C, D, E and G, starting on the A below middle C. 25 scales hold all five. A minor pentatonic and C major pentatonic both hold exactly these five notes and nothing else, the same set started from a different note; A minor pentatonic ranks first because A is both the first and the lowest note (2 points against 0). Next come A blues (adds Eb), A natural minor (adds B and F) and A Dorian (adds B and F#).
Notes you tap on the screen count while they are held and drop out when you tap them again. Notes from a MIDI keyboard or the microphone are collected as they sound, so you can play a melody one note at a time; Undo last removes the most recent one and Clear starts again. If no scale holds everything you played, the closest ones are shown with the notes they lack.
The notes of every scale in every key
Fifteen scale types on all twelve roots, one page each with the notes, intervals, piano and guitar diagrams and the chords. Ionian and Aeolian are the modal names of major and natural minor, so they are on those pages.
| Scale | Formula | Roots |
|---|---|---|
| Major | 1 2 3 4 5 6 7 | |
| Natural minor | 1 2 b3 4 5 b6 b7 | |
| Harmonic minor | 1 2 b3 4 5 b6 7 | |
| Melodic minor | 1 2 b3 4 5 6 7 | |
| Dorian | 1 2 b3 4 5 6 b7 | |
| Phrygian | 1 b2 b3 4 5 b6 b7 | |
| Lydian | 1 2 3 #4 5 6 7 | |
| Mixolydian | 1 2 3 4 5 6 b7 | |
| Locrian | 1 b2 b3 4 b5 b6 b7 | |
| Major pentatonic | 1 2 3 5 6 | |
| Minor pentatonic | 1 b3 4 5 b7 | |
| Blues | 1 b3 4 b5 5 b7 | |
| Whole-tone | 1 2 3 #4 #5 b7 | |
| Diminished half-whole | 1 b2 #2 3 #4 5 6 b7 | |
| Diminished whole-half | 1 2 b3 4 b5 b6 6 7 |
What this cannot do
- It matches pitch classes, not melodies. It cannot tell that a tune is in Dorian rather than the major scale with the same notes; the note the tune keeps coming back to decides that, and you can tell it by playing that note first or lowest.
- 15 scale types only: no Phrygian dominant, Hungarian minor, bebop, Hirajoshi or other scales, and no quarter tones.
- The microphone hears best one clean instrument; a sung note or a noisy room can add a wrong note to the list. Use Undo last to take it out.
- Web MIDI works in Chrome, Edge, Opera and Firefox on a computer and in Chrome on Android, not in Safari or on iPhone and iPad.
- Typed notes are pitch classes, so octave and order are ignored: C4 is read as C, and C E G finds the same scales as G E C. The one exception is the bass. The first note typed is taken as the lowest, which decides the chord's inversion (F A C D is F6, D F A C is Dm7) and breaks ties between scales the way playing that note first and lowest would. Letters only: solfège (do re mi) and the German H are not read, and are named on screen instead.
Everything runs in this page. Microphone sound is analysed in memory and thrown away; apart from an anonymous page-view count, and the fixed word notes-typed the first time the typed box shows a result, the page sends nothing anywhere, and never what you play or type.