I colori sono prodotti dal movimento degli ioni metallici quando vengono introdotti alla fiamma. Il calore dalla fiamma eccita gli ioni e mentre gli ioni si muovono rilasciano una raffica di energia luminosa.
Quando uno ione è eccitato, gli elettroni vengono spostati in uno stato di energia superiore. Questo stato è anche instabile e non può essere sostenuto a lungo, e così gli ioni torneranno allo stato originale. I salti tra gli stati energetici producono una luce e le differenze nelle dimensioni dei movimenti tra i metalli si riflettono nei diversi colori visti.
La quantità di energia prodotta da uno ione mentre si muove dipende dal metallo. Questo influenza quindi il colore prodotto. Un test di fiamma può essere utilizzato per rilevare quali metalli sono in un composto. Per esempio, il litio produce una fiamma rossa, mentre il bario produce una fiamma verde pallido.