I am trying to annotate a recording of a language that has both velar k and uvular q. It’s tricky because I can’t always distinguish the two phonemes by ear.
What features may I see in a spectrogram that could help me distinguish a /k/ from a /q/?
This is somewhat surprisingly hard to determine. The best study on the topic that I know of is Denzer-King's study of Tlingit. The basic strategy is to compare the frequency and amplitude of higher formants in the release. A very quick synopsis is that the frequency separation of F2 and F3 may be much greater in uvular compared to velars; F2 may be higher for velars compared to uvulars, but F3 may be higher for uvulars compared to velars. This assumes that the following vowel is the same. I say "may" because there isn't a solid basis of acoustic studies to make a strong claim. There is also a general energy-distribution measure described in the thesis, but I don't understand how you compute it, and that seems to be more relevant for fricatives.
It is also important to bear in mind that there is a "quantal boundary" between velars and uvulars; and sometimes things called "uvulars" are called "postvelars". In Kenyang, there are (allophonic) uvulars, which might also be called "lowered velars", but which are not as retracted as is [q] in Arabic, Lushootseed or Chechen. A propos Chechen, the Forvo collection has a number of words ([q] is Cyrillic кх, [k] is к).