Первый герб Йошкар-Олы (Царевококшайска) был утвержден именным указом императрицы Екатерины II 18 октября 1781 года. Он имел традиционную форму городских гербов - боевой щит, так называемой французской формы, прямоугольный, с овально закругленными нижними углами и с острием в середине нижней части. В верхней части герба - на белом поле - черный дракон с золотой короной и красными крыльями - символ Казанской губернии и свидетельство вхождения города Царевококшайска в ее состав. В нижней части - серебряный лось в голубом поле, в знак того, что "таковых зверей в окрестностях весьма изобильно, в ловле которых обыватели сих мест упражняются".
Следующий герб был принят 19 августа 1968 года. Он имел традиционную щитовидную форму с прямыми углами на верхней части и с закруглением двух нижних углов в овалы и остриём в середине нижней части. На верхнем краю щита - надпись "Йошкар-Ола", под надписью горизонтальная кайма с марийским орнаментом. На верхней половине щита по центру был изображён силуэт снежинки, в её центре - шестерёнка. В нижней части половины щита изображён лось, как символ благородства и силы. Левая половина щита имела голубую окраску, а правая - красную.
Современный герб Йошкар-Олы был принят 28 октября 2005 года. В лазоревом поле с национальным марийским орнаментом в обруче изображена серебряная лосиха, щит увенчан золотой башенной короной с пятью зубцами.