ierwotnie polską barwą narodową był karmazyn, stanowiący symbol dostojeństwa i bogactwa, a zarazem uważany za najszlachetniejszy z kolorów.
Z uwagi na cenę barwnika - koszenili uzyskiwanej z larw czerwca polskiego, mało kto mógł sobie na niego pozwolić, dlatego też był on wykorzystywany jedynie przez najbogatszą szlachtę i dostojników państwowych.
Na pierwszych flagach i sztandarach reprezentujących Królestwo Polskie widniał biały orzeł w koronie na czerwonym tle.
Jan Długosz opisując przygotowania do bitwy pod Grunwaldem pisze o "chorągwi wielkiej, na której wyszyty był misternie orzeł biały z rozciągnionemi skrzydły, dziobem rozwartym i z koroną na głowie, jako herb i godło całego Królestwa Polskiego".
Barwami królewskimi Rzeczypospolitej Obojga Narodów był sztandar złożony z trzech pasów: dwóch czerwonych umieszczonych w dole i na górze oraz oddzielającym go pasie białym, na których umieszczano zwykle czterodzielny Herb Rzeczypospolitej Obojga Narodów o czerwonym tle zawierający dwa pola przedstawiające białego Orła w koronie, czyli symbol Korony i dwa z wizerunkiem Pogoni - herbu Litwy.
Na tarczy sercowej znajdował się najczęściej herb rodowy aktualnie panującego monarchy.
Barwy biała i czerwona zostały uznane za narodowe po raz pierwszy 3 maja 1792. Podczas obchodów pierwszej rocznicy uchwalenia Ustawy Rządowej damy wystąpiły wówczas w białych sukniach przepasanych czerwoną wstęgą, a panowie nałożyli na siebie szarfy biało-czerwone.
Nawiązano tą manifestacją do heraldyki Królestwa Polskiego - Białego Orła na czerwonej tarczy herbowej.
Po raz pierwszy regulacja prawna polskiej flagi została przyjęta w uchwale Sejmu Królestwa Polskiego z 7 lutego 1831 na wniosek posła Walentego Zwierkowskiego, wiceprezesa Towarzystwa Patriotycznego, jako propozycja kompromisowa pomiędzy barwą białą - nadaną przez Augusta II Mocnego i proponowaną przez konserwatystów i trójbarwną - biało-czerwono-szafirową - barwami konfederacji barskiej proponowanymi przez Towarzystwo Patriotyczne.
Po odzyskaniu niepodległości barwy i kształt flagi uchwalił Sejm Ustawodawczy odrodzonej Polski 1 sierpnia 1919.
W ustawie podano: "Za barwy Rzeczypospolitej Polskiej uznaje się kolor biały i czerwony w podłużnych pasach równoległych, z których górny - biały, dolny zaś - czerwony."
Dwa lata później Ministerstwo Spraw Wojskowych wydało broszurę w której sprecyzowano odcień czerwieni definiując ją jako karmazyn, ale w 1927 odcień koloru czerwonego został zmieniony na cynober, ten sam kolor został użyty w definicji flagi w ustawie z 1955.
Kolory flagi zostały ponownie zmienione ustawą z 31 stycznia 1980, ustawę opracował zespół ekspertów w skład którego wchodzili Szymon Kobyliński, Maria Szypowska, Kazimierz Sikorski oraz Nikodem Sobczak. Ustawa ta obowiązuje do dziś.
Od 2004 roku 2 maja jest w Polsce oficjalnie obchodzony jako Dzień Flagi Rzeczypospolitej Polskiej.