Тут несколько причин, и они накладываются друг на друга.
Методологическая. Подсчитать жертвы Гражданской войны объективно сложнее чем потери в ВОВ. В 1941-1945 существовала единая государственная система учета. Были военкоматы, штабы, госпитали, похоронные команды. Да, учет был далек от совершенства, но он был.
В Гражданскую войну единого государства не существовало. На территории бывшей Российской империи одновременно действовали десятки правительств, армий, банд. Никто не вел систематического учета потерь. Белые армии вообще почти не оставили централизованной статистики. Красные вели учет выборочно. А жертвы среди мирного населения от голода, тифа, испанки, погромов не считал вообще никто.
Политическая. В советское время Гражданская война подавалась как героическая победа красных над белогвардейцами и интервентами. Акцентировать внимание на масштабе жертв значило ставить вопрос: а стоила ли революция такой цены? Это был неудобный вопрос для советской идеологии.
В постсоветское время тема тоже не стала удобной. Признать масштаб потерь значит признать что гражданский конфликт был катастрофой для всех сторон. А в публичном пространстве до сих пор идет спор "красные vs белые", и каждая сторона хочет быть жертвой, а не палачом.
Психологическая. Великая Отечественная война имеет четкую структуру для массового сознания: внешний враг напал, народ объединился, победил. Это нарратив национального единства. Гражданская война это нарратив раскола. Свои убивали своих. Это травма которую общество до сих пор не проработало, и проще ее не трогать чем разбираться в цифрах.
Наиболее обоснованные оценки дают диапазон 10-12 миллионов человек, включая боевые потери (около 2.5 млн с обеих сторон), красный и белый террор, эпидемии тифа, голод 1921-1922, эмиграцию (около 2 млн). Демографические потери с учетом неродившихся значительно выше.