The history of the Bolivian flag began in 1825, when Bolivia became an independent republic. The first flag had vertical stripes of green, red and green, where the red stripe was much wider than the green ones and contained five stars in the center, symbolizing the five founding departments of the country. The second flag, which appeared in 1826, had a horizontal yellow stripe over three vertical stripes from the previous flag and the Bolivian coat of arms in the center. In 1831, during the presidency of Andrés de Santa Cruz, the stripes were changed to three horizontal stripes of yellow, red and green. The civilian flag consisted only of colored stripes, while the national flag additionally contained the coat of arms in the center. Also, during 1836-1839, there was a flag of the Peruvian-Bolivian Confederation with intertwined coats of arms and laurel branches.

The Bolivian flag was created in 1851 during the National Congress in Oruro. The then president of Bolivia, Manuel Isidoro Belsu, noticed a rainbow of red, yellow, and green in the sky and decided to use these colors on the flag. The official design of the flag was approved on October 31, 1851 and had three equal-sized stripes: red at the top, yellow in the center, and green at the bottom. Two days later, on November 7, 1851, the flag was raised on top of a hill above the Conchupata Lighthouse in Oruro. In 1888, a law was passed that established the official use of the flag and stipulated that all three stripes on the flag should be the same size. This flag design and colors remain unchanged to this day.

In 2004, it was established that the civilian flag would be used at public and civic events, while the flag with the coat of arms would remain for official events.