De vlag van Zuid-Ossetië (Russisch: Государственный флаг Республики Южная Осетия) is een horizontale driekleur in de kleuren wit (boven), rood en geel. Deze kleuren zijn vastgelegd in de grondwet van Zuid-Ossetië van 26 november1990 en bevestigd door de wet op de vlag van 30 maart1992.
De kleuren hebben elk een eigen betekenis: wit symboliseert intelligentie en morele reinheid, rood staat voor de moed van de martelaren en geel symboliseert rijkdom en welvaart. De drie kleuren zouden ook de band tussen de drie historische bevolkingslagen moeten uitbeelden: de militaire aristocratie, de geestelijkheid en het gewone volk.
De vlag is identiek aan de vlag van Noord-Ossetië, waarmee de band tussen beide entiteiten wordt uitgedrukt.