История Спаса на Крови берет начало 1 марта 1881 года, когда на Екатерининском канале от бомбы народовольцев погиб Александр II. Его сын, Александр III, велел возвести на этом месте храм всенародного покаяния.
До начала каменного строительства здесь установили временную деревянную часовню, архитектором стал Леонтий Бенуа. Ее освятили в день рождения убитого императора 17 апреля 1881 года. Внутри хранился фрагмент мостовой с кровью царя. Часовню перенесли в 1883 году, а позже разобрали.
Решение о том, каким будет храм, принималось долго. Три конкурса (1881—1883 годы) не выявили фаворита, пока император не утвердил проект архитектора Альфреда Парланда и архимандрита Игнатия. Монарх поставил жесткое условие: храм должен был быть выполнен в русском стиле, в духе церквей Ярославля и Москвы XVII века.
Проект утвердили в 1883 году, но дорабатывали до 1887-го. Позже архимандрит Игнатий отошел от дел, и сооружение продолжилось под руководством одного Парланда. Строительство длилось 24 года. Средства собирали по всей России — храм возводили в том числе на народные пожертвования. Общая сумма затрат составила 4,6 млн ₽.
Торжественное освящение собора состоялось 19 августа 1907 года. На церемонии присутствовал император Николай II с семьей. Богослужение возглавил митрополит Санкт-Петербургский и Ладожский Антоний (Вадковский).