La 12e armée est créée au milieu de , sous le commandement de Pavel von Plehve, pour renforcer le front du Narew dans le nord de la Pologne russe. Elle comprend alors 13 divisions d'infanterie et 2 de cavalerie. En , elle constitue les corps suivants :
En février-, la 12e armée participe à la bataille de Przasnysz où les Russes arrêtent l'offensive de l'Armeegruppe Gallwitz.
En , la 12e armée est battue lors de l'offensive allemande de la Narew. Pendant l'été 1915, la Grande Retraite de l'armée russe entraîne un repli général de la 12e armée. À partir de la fin d', elle se reconstitue dans le secteur nord du front, le long de la Dvina et jusqu'à la mer Baltique. Son flanc sud-est est couvert par la 5e armée. Elle est alors commandée par le général Vladimir Gorbatovsky(en) et comprend 8 divisions d'infanterie et 2 de cavalerie, formant les corps suivants :
IIe corps sibérien
VIe corps sibérien
VIIe corps sibérien
1917
Lors des batailles de l'Aa, en , la 12e armée, commandée par le général bulgare Radko Dimitriev, tente de franchir la ligne allemande de la Lielupe (Aa de Courlande) en pleine tempête de neige pour reprendre Jelgava (Mitau), capitale du gouvernement de Courlande. Cette offensive manquée, suivie d'une contre-attaque allemande qui reprend le terrain conquis, entraîne un mécontentement croisant de la troupe : 92 mutins sont fusillés et plusieurs centaines déportés.
En , la 12e armée, commandée par Dmitri Parski, est défaite devant Riga. Cet échec entraîne la conquête de la ville par les unités allemandes. Les tirailleurs lettons parviennent à couvrir la retraite russe, évitant une débâcle.