There are two ways to determine what key something is in. The first is to look at the set of notes (the scale) that you're using, and find a key signature that matches. The second is to find which note chord is being "tonicized." This is done by using a rising-fourth chord progression, which acts as a V-I (dominant-tonic) relationship. Both of these methods can be circumvented or subverted: the first by using chromatic notes outside of the scale, and the second by using secondary dominants. It is worth noting that, since the major and (natural) minor scales share the same key signature, the second method (tonicization) is the best way to distinguish between them.
In your case, neither method works completely:
There is no rising fourth progression at all. In fact, every progression is a falling fourth (also known as a plagal cadence), except for the rising third at the end that takes us from Am back to Cm. As a result, there is no chord that is tonicized. This means that even if we could pick a scale, there's no reliable way to distinguish which mode of the scale (such as major or minor) we are using.
There is no single scale that contains all the notes that you use. Specifically, as Dom notes, you use both an E and an E♭.
So there is no correct answer to the question of what key this progression is in. There's simply not enough information in the progression to establish a key. That's not to say that it is atonal -- there are several keys that it could belong to, but there's not enough information to say which one it definitely is. This is called being tonally ambiguous.
As exotic as it might sound, tonally ambiguous chord progressions really aren't all that uncommon. This type of music is also often called modal, not because it is necessarily in a specific mode (e.g. Mixolydian, or Phrygian, etc...) but because it avoids (or uses sparely) the conventions of tonal music. Some common features of modal style music include: a preference for plagal progressions (falling-fourths) over dominant-tonic progressions (rising-fourths), a frequent use of borrowed chords (♭III, ♭VI, ♭VII), a disreagard for the expected chord quality (using majors instead of minors, or vice-cersa), and using the ♭seven of the key to avoid a strong dominant sound. This style is especially common in modal folk music, or blues-inspired music. It could probably be debated whether it arose by intention, or by accident due to the convenience of certain chord shapes on the guitar.
At any rate, one way that this technique can be used is to weaken the tonic during a verse, so that when a dominant-tonic progression is finally heard in the chorus it will be much more striking. Once you're ready to define the key that you're really in, you need only pick a dominant chord, and following it with a tonic.
Another way that tonally ambiguous progressions can be used is to change between two different keys. In fact, this is an excellent way to modulate gracefully without being noticed.
So which keys could this progression be used in? Many of the existing answers have already given good options for this.
If you go back to looking at the scale, you'll notice that any scale with an E♭ also has a B♭ in it. Since your progression contains a G chord (which has a B natural in) the simplest assumption is that the E♭ is the chromatic note (and thus the C minor is the borrowed chord). This would place the piece in C major/A minor (again, there's not enough information to say which).
On the other hand, you might consider that E♭ and B♭ are part of the scale, in which case the G major chord would have to be borrowed (which suggests C minor, with G being its dominant). However, this would also require the A minor being borrowed (vi instead of the usual ♭VI), which I don't think is a common borrowing.
In fact, if you restrict yourself to keys that only need to contain the roots of all four of your chords (instead of all the notes in the chord), then you could use any key which contains the notes C, D, G, and A:
By my count, these are:
- B♭/Gm
- C/Am
- F/Dm
- G/Em
As I mentioned earlier, you can make any one of these keys sound like the home key by simply playing a dominant-tonic progression in that key. As an example: if you wanted to go to Dm, simply replace the A minor chord with an A major (or better: an A7) then follow up with a D minor and you're there. You could even go to D major this way, if you wanted to.
<pre>..</pre>
instead of the preformatted text, if you don't want these voicings to show