Et standalone-program, også kendt som et fritstående program, er et computerprogram, der ikke indlæser et eksternt modul, en biblioteksfunktion eller et program, og som er designet til at starte op med målprocessorens bootstrap-procedure – det kører på bare metal. I tidlige computere som ENIAC, hvor der ikke fandtes et operativsystem, var selvstændige programmer den eneste måde at køre en computer på. Standalone-programmer er normalt skrevet i eller kompileret til assemblagesproget for den specifikke hardware.
Sidligere standalone-programmer blev typisk leveret til hjælpefunktioner som f.eks. diskformatering. Også computere med meget begrænset hukommelse anvendte standaloneprogrammer, dvs. de fleste computere indtil midten af 1950’erne, og senere stadig indlejrede processorer.
Standaloneprogrammer er nu hovedsagelig begrænset til SoC’er eller mikrocontrollere (hvor batterilevetid, pris og dataplads er i højsædet) og kritiske systemer. I ekstreme tilfælde skal alle mulige sæt af input og fejl testes og dermed alle potentielle output være kendt; fuldstændig uafhængig, men fuldt parallel overvågning af systemtilstanden; eller hvor angrebsfladen skal minimeres; et operativsystem ville tilføje uacceptabel kompleksitet og usikkerhed (eksempler: sikkerhedsafbrydelser for industrielle operatører, kommercielle flyselskaber, medicinsk udstyr og kontrol af affyring af ballistiske missiler, lithium-batteriopladeregulatorer i forbrugerudstyr). Ressourcebegrænsede mikrocontrollere kan også gøres mere tolerante over for varierende miljøforhold end den kraftigere hardware, der er nødvendig for et operativsystem; dette er muligt, fordi den meget lavere clockfrekvens, pinafstand, mangel på store databusser (f.eks. ddr4 rammoduler) og det begrænsede antal transistorer giver mulighed for større designmarginer og dermed mulighed for mere robuste elektriske og fysiske egenskaber både i kredsløbslayout og materialevalg.