ลักษณะภูมิประเทศโดยทั่วไปของมหาสารคาม เป็นที่ราบสูง พื้นดินปนทรายหรือไม่ก็เป็นทรายร่วน เป็นเหตุหนึ่งให้เมืองนี้กันดารน้ำในหน้าแล้ง เพราะแม้จะมีฝนตกน้ำก็ไหลไปหมด ไม่มีน้ำขังอยู่ ทางการได้แก้ปัญหาด้วยการสร้างอ่างเก็บน้ำขึ้นตามที่ต่างๆ สร้างถังเก็บน้ำฝน ขุดเจาะบ่อบาดาลเพื่อป้องกันการขาดแคลนน้ำ จังหวัดนี้ถึงฤดูร้อนก็ร้อนจัด ถึงฤดูหนาวก็หนาวจัด แต่ฝนไม่สู้แน่นอน บางปีก็มีมาก บางปีก็มีน้อย ระดับพื้นที่โดยเฉลี่ยสูงจากระดับน้ำทะเลปานกลาง 130 – 230 เมตร พื้นที่ค่อนข้างลาดเทจากแนวทิศเหนือใต้ไปทางทิศตะวันออก พื้นที่เป็นลูกคลื่น ประกอบด้วย
เนินมออยู่ทั่วไป แต่ไม่มีภูเขา มีทุ่งนาสลับกับป่าโปร่ง ซึ่งมีไม้ในเขตร้อน หรือที่เรียกว่า ป่าโคกขึ้นประปราย เช่น ไม้พลวง เหียงกระบก เต็งรัง ตุมกา ฯลฯ สภาพภูมิประเทศดังกล่าวสามารถแบ่งได้ 3 บริเวณ คือ
1) ที่ราบริมฝั่งแม่น้ำ ส่วนใหญ่เป็นที่ราบริมฝั่งแม่น้ำที่ไหลผ่านจังหวัดมหาสารคามเช่น บริเวณที่ราบลุ่มแม่น้ำชี ที่อำเภอโกสุมพิสัย อำเภอกันทรวิชัย อำเภอเมือง
2) พื้นที่ลูกคลื่นตอนต้น อยู่ทางทิศตะวันออกของอำเภอพยัคฆภูมิพิสัย
3) พื้นที่สูง อยู่ทางทิศเหนือและทิศตะวันออกของจังหวัด ในเขตอำเภอโกสุมิพิสัย อำเภอเชียงยืน และอำเภอกันทรวิชัย ครอบคลุมพื้นที่ประมาณร้อยละ 50 ของพื้นที่จังหวัด