I'm working on a program to help musicians write chord progressions. You pick the chords one at a time in sequence, and the computer to try to "guess" what chords should come next, similar to the way iphone guesses what word i'm trying to type.

For example, given C-Am-F, the next is likely G.

Here are some rules I've come up with so far. ("home" is the first chord in the song, "last" is the last chord so far, "next" is the chord the computer will guess)

  1. the tonic note of next is in the scale of the last (eg. G is in the F major scale)
  2. the dominant note of next is in the scale of the last (D is in the F major scale)
  3. the tonic note of next is in the scale of home (G is in C major)
  4. the next and the last have some notes in common

A score is determined based on the number of rules that are satisfied. (Some might be weighted more than others.) The top 10 chords based on score are then presented to the user to pick from.

Has this already been done? Can you help me to think of more rules? I know that my rules so far are not very good.

  • 3
    Personally I would prefer to set an expectation and then challenge it to create surprise for the listener. I would prefer to look at it from a totally different perspective, and since I’m trying to write to a feeling, I can’t figure out how a computer could be programmed to help me with that. I definitely would want something that suggests the next chord I might use based on my writing history - unless perhaps I use it to make sure I do something new and different every time. But then the algorithm can’t learn from me. Nov 12, 2018 at 6:28
  • The quality of your results is going to depend heavily on the quality of programming, and what "rule set" you allow. See, for example, Hindemith's book on theory and harmony. Nov 12, 2018 at 14:01
  • I might add that this sort of thing has been done many times - with expert programmers setting up neural nets with adjustable weights for far more properties than just chord progressions. Nov 12, 2018 at 14:04
  • 2
    Yeah, you might have more success with a Markov chain, where a chord is followed by a selection of other chords, each with a certain probability of being chosen.
    – Dekkadeci
    Nov 12, 2018 at 14:09
  • 1
    @JohnHenckel this may interest you: it's a statistical study of the occurrence of chords in rock music midside.com/publications/declercq_temperley_2011.pdf, especially jump to p. 61 chord transitions Nov 13, 2018 at 19:13

3 Answers 3


Percy Goetschius, an American music theoretician of the 19th and early 20th centuries, gave the following table in one of his books. Should get you started. As he says, the ordinary progressions are those of one class to the left, so these should get the largest probability weight. Make sure to give the "digressions" (motions to the right) some love too, however, otherwise you would never leave the tonic class anymore, and also the larger digressions (two classes to the right) for the sake of surprise. What these relative probability weights should be numerically depends on the particular style you want to recreate. Of course all of this doesn't account for modulations, which have their own "rules".

enter image description here


The Project looks like a good idea, However take a look at piano companion(android) mobile app ( I think it has something similar to this feature). Also check garage band(ipad) app.

The example rules listed in the questions are not clear to me, I think you have mixed note and chord in your example rules (the tonic note of next is in the scale of the last (eg. G is in the F major scale) this is confusing, you can reword the rules)

Meanwhile also take a look at chord progressions using "circle of fifth" in music theory, that will help you come up with possible next chords for a given scale, given first chord and given last chord.

Also consider adding major,minor natural,minor harmonic, minor melodic,pentatonic scales support and possible chord progressions including major/minor/augmented/diminished/sus2/sus4/7th/dominants/9th/11th/13th chords and midi instruments selection.


Just browsing the paper (indicated by Michael Curtis) and it is a gold mine! Particularly this table.

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.