Les couleurs sont produites par le mouvement des ions métalliques lorsqu'ils sont introduits dans la flamme. La chaleur de la flamme excite les ions, et lorsque les ions se déplacent, ils libèrent une explosion d'énergie lumineuse.
Lorsqu'un ion est excité, les électrons sont déplacés vers un état d'énergie plus élevé. Cet état est également instable et ne peut pas être maintenu longtemps, de sorte que les ions retomberont dans leur état d'origine. Les sauts entre les états énergétiques produisent une lumière, et les différences de taille des mouvements entre les métaux se reflètent dans les différentes couleurs observées.
La quantité d'énergie produite par un ion lorsqu'il se déplace dépend du métal. Cela affecte alors la couleur produite. Un test de flamme peut être utilisé pour détecter quels métaux sont dans un composé. Par exemple, le lithium produit une flamme rouge, tandis que le baryum produit une flamme vert pâle.