semicord

Play a chord, see its name

Tap keys on the piano or frets on the guitar below (tap again to lift a note), play a MIDI keyboard, or let the microphone listen.

Guitar fretboard

Standard tuning: E A D G B E

High string on top, as in tablature. One note per string: tap a fret, tap the string name to switch between open (o) and muted (×). Notes you press on the piano appear here as hollow rings wherever the neck can play that exact pitch. Drop D, DADGAD and open G are one tap away on the tuner, which tunes your guitar to them first.

Every chord, one page each: the notes, piano and guitar diagrams and inversions of the 288 most common chords in all twelve keys.

Chords in every key: the triads and sevenths of all 24 major and minor keys, and a finder that tells you the key of a song from its chords.

Tuner: tune a guitar, bass, ukulele or violin with your microphone, then come back here to check a chord in the same tuning.

What it names

Any two or more notes you hold are checked against 37 chord formulas, with each note tried as the root. It knows:

FamilySymbols (shown on C)
Triads and power chordC, Cm, Cdim, Caug, Csus2, Csus4, C5
Sixths and added notesC6, Cm6, C6/9, Cadd9, Cm(add9), Cadd11, Cm(add11)
SeventhsC7, Cmaj7, Cm7, Cm7b5, Cdim7, Cm(maj7), C7sus4, Cmaj7#5
ExtendedC9, Cmaj9, Cm9, C11 (also written C9sus4), Cm11, C13, Cmaj13, Cm13
Altered dominantsC7b5, C7#5, C7b9, C7#9, C7#11, C7b13, Cmaj7#11

Inversions come out as slash chords: E G C is C/E, first inversion. A bass note that belongs to no chord gives a slash chord too: A under G B D is G/A. Two notes give the interval (C + G: perfect fifth, written C5); one note gives its name.

Notes are spelled from the root, one letter per chord tone, so B♭7 reads Bb D F Ab rather than A# D F G#, and F#7 reads F# A# C# E. Cdim7 is C Eb Gb Bbb: the seventh is a B double-flat, the same key as A. When a chord could take either a sharp or a flat root, it picks the spelling with fewer accidentals, so Gbmaj7 (Gb Bb Db F) wins over F#maj7 (F# A# C# E#). Both are correct.

How it picks one name

The same four notes can carry several names. A C E G is Am7 when A is the lowest note, and C E G A is C6 when C is. The notes are the same, so semicord lets the bass decide and lists the other reading under Also (C6/A, Am7/C). The ranking prefers, in order: a reading whose root is in the bass; common chord types over rare ones (a plain dominant seventh before a 7#11); and all notes explained over a slash chord.

Some choices are judgement calls, and the other names are always listed:

  • C in the bass under D F# A is D7/C (third inversion), with D/C as the alternative. B under C E G is C/B, the walking-bass chord of many pop songs, with Cmaj7/B as the alternative.
  • The fifth may be left out of seventh and larger chords, as guitarists and jazz pianists usually do: C E B♭ is still C7, and G B F E is G13. In a triad the fifth has to be there, so C E alone is an interval, not a chord.
  • It never assumes a note you did not play. The rootless voicing E G B♭ D is named Em7b5, not C9, because no C sounds.

Play into the microphone

Press Microphone, allow access, and play a chord. Ten times a second semicord takes the last 16,384 samples (about a third of a second), finds the peaks in the spectrum between 50 Hz and 5 kHz and works out which notes from C2 to C7 explain them. Each candidate note is scored on the first eight partials of its harmonic series (the fundamental and seven overtones); the best is taken, its harmonics are subtracted, and the search repeats. The notes found are folded into the twelve pitch classes shown in the bars, the lowest confident note becomes the bass, and the result goes through the same naming engine as the piano, so you get the same name, notes, formula, inversion and alternatives.

How often it is right, measured by the test suite on 864 synthesised chords (8 chord types, 12 roots, 3 voicings, 3 tone colours; each note a sum of decaying harmonics):

  • Clean: 816 of 864 named exactly right (94%).
  • Every note 20 cents sharp, like an instrument slightly out of tune: 818 of 864.
  • With loud hiss added, the noise on average only 8 dB quieter than the chord: 803 of 864.
  • By voicing (clean): close voicings 285 of 288, first inversions 287 of 288, open voicings with the root doubled an octave below 244 of 288. In an open voicing the chord's fifth sits exactly on the low root's third harmonic, and the two can cancel each other out.
  • Single notes: 147 of 147 heard as that one note, never as a chord.

These are test signals, not recordings. We have not measured it on real guitars and pianos in real rooms, which are harder. In plain words:

  • It hears pitch classes, not voicings. Octave doublings and the register of each note are not shown, and the bass, so the inversion, is an estimate of the lowest note.
  • It works best with one instrument and a clean tone. Distortion adds tones that are not in the chord, and drums, singing or a full band add pitches and noise, so the answer will often be wrong or missing.
  • It does not look below C2 (65 Hz), and phone and laptop microphones pick up little of the lowest notes, so a weak bass note can be missed.
  • Let the chord ring for half a second. After a change the name follows in about half a second.
  • If your speakers play the page's own chord sound, the microphone hears that too. Use headphones, or turn off Sound on tap.

The microphone is opened with echo cancellation, noise suppression and automatic gain turned off, because those filters change the pitch content. Stop turns the microphone off completely: the browser's recording indicator goes out.

Play a MIDI keyboard

Connect a USB or Bluetooth MIDI keyboard and press MIDI keyboard. The browser asks once for permission; the page never asks on its own. Hold notes and the chord is named as you play. Notes held by the sustain pedal (controller 64) count until you lift it. Several keyboards are merged into one, and a keyboard plugged in later is picked up without reloading. Notes outside the on-screen piano's C3–C6 still count for the name.

Which browsers can do it

Checked against MDN's browser-compat-data on 23 September 2026.

BrowserMIDI keyboardMicrophone
Chrome, Edge, Opera on a computerYes (Chrome 43+, Edge 79+)Yes
Chrome, Samsung Internet, Opera on AndroidYesYes
Firefox on a computerYes from Firefox 108. Firefox first asks you to install a small site-permission add-on.Yes
Firefox on AndroidNoYes
Safari on a MacNoYes (Safari 11+)
Any browser on iPhone or iPadNo: they all run Safari's engineYes (iOS 11+)

Where a browser has no Web MIDI, the MIDI button is greyed out and says why. The microphone needs your permission every time the browser asks for it.

What it does not do yet

  • It names each chord on its own, with no key or context. It cannot tell a German sixth from a dominant seventh, or say what role a chord plays in a song.
  • No polychords (two stacked chord symbols) and no rarer types such as 7b9#11. Clusters with no common name (C C# D) are reported as unnamed.
  • The piano covers C3–C6. The fretboard covers frets 0–15 in standard tuning, or drop D, DADGAD and open G when the address ends in ?tuning=drop-d, ?tuning=dadgad or ?tuning=open-g. Other tunings are not supported yet.

Everything runs in this page. The Play and Arpeggio buttons synthesise the sound in your browser with the Web Audio API. No samples are downloaded. Microphone sound is analysed in memory and thrown away: nothing is recorded, saved or uploaded. Apart from an anonymous page-view count, the page sends nothing anywhere, and never what you play.