В древности вместо слов «флаг» и «знамя» употреблялось слово «стяг». Выражение «поставить стяг» означало построение дружины к битве. Стяг «стягивал» витязей в боевой порядок и отмечал сердцевину войска. На его защиту ставили стяговников-богатырей.
Ещё в Х веке витязи Святослава Великого бились под красными стягами. В одной из древних рукописей сохранились их изображения. Полотнища стягов были клиновидной формы, а навершия — в виде копья с перекладиной, то есть в форме креста.
По стягу судили о ходе битвы. Стяг «простирашася яко облацы» — значит, бой идёт успешно. Падение стяга говорило о бедственном положении войска, о том, что враги «досекошася до стяга, и стяг подсекоша». Наши летописи чрезвычайно лаконичны и скупы на подробности. Тем не менее в них отмечались даже потеря части стяга и смерть стяговника: «челку стяговую соторгоша», «стяговника нашего потяти».
Примечательно и происхождение слова «знамя». «Знамениями» называли изображения православных святынь. После того, как на стягах стали изображать св. Георгия и другие святые лики, они превратились в «знамения», а затем в «знамёна».
Единого национального флага в допетровской Руси не существовало. С древних времён на знамёнах великих князей изображались святые, лики Христа и Богородицы. Русские люди в разных обстоятельствах использовали разные символы, чтобы выразить свою народную, русскую сущность — хоругви, иконы, казачьи бунчуки, знамена стрелецких полков и т.д.
На Куликовом поле над русской армией реяло огромное красное знамя с изображением образа Нерукотворного Спаса.
В летописной записи об осаде Казани Иваном Грозным (1552) говорится: «и велел государь херугви христианские развертити, сиречь знамя, на них образ Господа нашего Иисуса Христа Нерукотворенный, и наверх водружен животворящий крест, иже бе у прародителя его, государя нашего, достохвалного великаго князя Дмитриа на Дону». Этот исторический стяг сохранился до наших дней в Оружейной палате Кремля.
Хорошо известен так называемый «Великий стяг» Ивана Грозного. Это полотнище в виде трапеции (с откосом). У древка на лазуревом поле изображён Святой Михаил на коне. На откосе «сахарного» цвета изображён Христос. Знамя имеет кайму «брусничного цвета», у откоса дополнительно кайма «макового» цвета.
В 1612 году над ополчением, вышедшем из Нижнего Новгорода к Москве, развевалось знамя Дмитрия Пожарского. Оно было малинового цвета и на одной своей стороне несло образ Господа Вседержителя, а на другой — архангела Михаила. Народное ополчение под предводительством Кузьмы Минина и Дмитрия Пожарского положило конец Смуте, освобождению от польско-литовского ига и освободило Москву от захватчиков. Враги и предатели России были изгнаны, а русская государственность восстановлена. Знамя князя Пожарского по наступлении мирного времени было помещено в церкви и почиталось наравне с иконами. В грозный год наполеоновского нашествия со знамени Пожарского была сделана точная копия и вручена Нижнегородскому ополчению.
В 1668 году царь Алексей Михайлович указал написать гербовое («гербовное») знамя, которое вместило почти всю официальную и неофициальную символику православного Российского царства.
Оно было трапециевидным, с широкой малиновой каймой с образом Христа в верхней части среди двух восьмиконечных русских крестов с подножием. На большую белую «косыню» (шириной 1,69 м , длиной поверху 4,36 м ) был помещен золотой двуглавый орел с двумя коронами, скипетром и державой, на грудном щитке орла — «царь, колющий копием змия». Под орлом был вид Кремля с надписью «Москва», а кругом — областные гербы царства. Все это, а также полный титул царя по кайме, раскрывало политическую программу правительства — объединение всех земель Древней Руси под властью православной Москвы.
Знамя участвовало во время государственных и церковных церемоний и выполняло функции царского штандарта — носилось перед царем в походах.
В 1667-1669 годах в подмосковном селе Дединове, на реке Оке, по указу царя Алексея Михайловича, происходило строительство небольшой военной флотилии для защиты торговых кораблей на Волге и Каспийском море. Главным среди строившихся судов был трехмачтовый корабль «Орел». Военному кораблю понадобился опознавательный знак — флаг. Капитан «Орла» Д. Бутлер обратился к правительству с вопросом, какой флаг поднять на корабле. Вопрос оказался очень актуальным, и Алексею Михайловичу пришлось решать, каковы будут государственные цвета России. Для утверждения ему были представлены белый, красный и синий цвета. Разработчики исходили из того, что по русским обиходным понятиям красный цвет означал отвагу, героизм, огонь; синий — небо, духовность, веру; белый — мир, чистоту, правду, благородство.
Сохранился документ 1668 года, в котором говорится о том, что отпущена была шелковая материя белого, синего и красного цвета для большого знамени, «что живет на корме». В книге «Корабельные флаги» Карла Алярда, изданной в Амстердаме еще в 1695 году, этот флаг описан так: «флаг Московский, определен синим крестом, первой и четвертой квартиер белой, второй и третий красной».
Гербовое знамя Петра I (1696) было красным с белой каймой, в центре изображался золотой орёл, парящий над морем, на груди орла в круге Спаситель, рядом Святые Пётр и Павел, Святой Дух. Но этому знамени не суждено было просуществовать долго, Петром I были созданы новые знамёна и флаги с новой символикой.
Триумфальное шествие триколора началось 6 августа 1693 года, когда Петр I на 12-пушечной яхте «Святой Пётр» во время плавания с отрядом военных кораблей в Белом море, построенных в Архангельске, поднял в качестве штандарта «Флаг царя Московского» — подобный современному русскому флагу триколор, с золотым двуглавым орлом посередине. Флаг из трех полос стал использоваться в качестве морского флага России.
20 января 1705 года Пётром I был издан указ, предписывающий «на торговых всяких судах» поднимать бело-сине-красный флаг. Такой флаг использовался также на военных кораблях до 1712 года, пока в качестве военно-морского флага не был утверждён Андреевский флаг. Бело-сине-красный флаг при этом стал флагом гражданских судов.
Единый морской флаг, принятый Петром, фактически стал государственным флагом России.
В 1712 году над военно-морскими кораблями взвился новый, «Андреевский», флаг — белый с лазоревым крестом, в честь ордена святого апостола Андрея Первозванного.
На косом кресте распяли апостола Андрея Первозванного. По этой причине у христиан косой крест связывается с именем этого апостола. Андрей Первозванный в своих странствиях достиг берегов Чёрного моря и крестил древних русов. На Руси гордились тем, что начало русского христианства связано с деяниями самого первого из учеников Христа.
Снятый с боевых кораблей штандарт был передан торговому флоту и получил название коммерческого. Собственно национального флага в России до середины XIX века не было. Впервые в России черно-желто-белый флаг начал вывешиваться в торжественные дни после 1815 года, вслед за окончанием Отечественной войны с наполеоновской Францией. Чёрно-жёлто-белое знамя основано на русской геральдической традиции. Его чёрный цвет — от двуглавого орла, жёлтый — от золотого поля герба, а белый — цвет св. Георгия. Также его цвета символизировали землю-золото-серебро.
В 1914 году особым циркуляром министерства иностранных дел был введён «для употребления в частном быту» новый национальный бело-сине-красный флаг с добавленным в верхней части у древка жёлтым квадратом с чёрным двуглавым орлом (композиция, соответствующая дворцовому штандарту императора); орёл изображался без титульных гербов на крыльях; квадрат перекрывал белую и около четверти синей полосы флага. Новый флаг не вводился как обязательный, его использование лишь «разрешалось». Символика флага подчёркивала единение царя с народом.
Существует множество сведений о том, что Николай 2-й хотел вновь сделать чёрно-жёлто-белый флаг государственным, однако война 1914 года помешала это осуществить и было решено оставить до победы. Статьей 1142 Морского Устава, издания 1886 года, бело-сине-красный флаг Высочайше утверждается Императором Александром Третьим лишь «для коммерческих судов» каким он был при его отце Александре Втором.
Во время Февральской революции широко использовалось красное знамя, но 25 апреля 1917 года на Юридическом совещании было предложено оставить в качестве национального флага бело-сине-красное полотно, так как данный флаг не имеет династических эмблем и может считаться флагом новой России.
А после Октябрьской революции новые власти стали использовать красный флаг с символами Р. С. Ф. С. Р., которые расшифровывались как Российская Социалистическая Федеративная Советская Республика.
В 1923 году флагом страны стало красное полотно со скрещённым серпом и молотом жёлтого цвета в верхнем левом углу над ними и пятиконечной звездой такого же цвета. Данный флаг продержался 68 лет до распада СССР. Один из вариантов этого флага, водружённый 1 мая 1945 года на крыше здания рейхстага в Берлине, является символом Победы советского народа в Великой Отечественной войне и имеет официальный статус Знамени Победы.
Чрезвычайная сессия Верховного Совета РСФСР 22 августа 1991 года приняла постановление считать официальным символом России триколор. Решение об использовании триколора в качестве государственного флага было утверждено Президентом РФ Борисом Ельциным 11 декабря 1993 года. Владимир Путин 25 декабря 2000 года окончательно утвердил федеральный конституционный закон «О Государственном флаге Российской Федерации».