Programinės įrangos licencijavimas yra sutartis tarp programinės įrangos leidėjo ir galutinio vartotojo, kartais vadinama galutinio vartotojo licencijos sutartimi arba EULA. Nors licencija gali būti popierinė sutartis, ji dažniausiai įtraukiama į pačią programinę įrangą kaip diegimo proceso dalis. Jei vartotojas nesutinka su programinės įrangos licencijavimo sąlygomis, jis gali tai nurodyti spustelėdamas. Tai nutraukia diegimo procesą. Daugeliu atvejų galutiniai vartotojai sutikdami spustelėja, ar jie iš tikrųjų perskaitė licenciją, ar ne.
Visų pirma, programinės įrangos licencijavimas apsaugo autorių teises, nustatydamas galutiniam vartotojui apribojimus, susijusius su produktu. Paprastai draudžiama kopijuoti kitais tikslais nei atsarginė kopija, diegimas daugiau nei viename kompiuteryje, kodo redagavimas ar programos keitimas bet kokiu būdu. Programinės įrangos licencijos taip pat gali apriboti atvirkštinę inžineriją ir apeiti kontrolę, kuria siekiama sumažinti piratavimą.
Be ribojančio programinės įrangos naudojimo, licencijavimas yra tam tikras atsakomybės atsisakymas. Daugumoje EULA yra teiginių, kad leidėjas nebus laikomas atsakingas už jokias nenumatytas aplinkybes, kurios gali kilti dėl programinės įrangos naudojimo. Tai gali reikšti bet ką – nuo kompiuterio gedimo iki duomenų, laiko ar pajamų praradimo.
Kai kurie leidėjai mano, kad sulaužius mažmeninės prekybos gaminio susitraukiančią plėvelę, galutinis vartotojas automatiškai sutinka su licencija. Įvairių valstybių teismai išnagrinėjo bylas šiuo klausimu, nes vartotojas negali perskaityti EULA, kol produktas neatidarytas, kai nėra popierinės sutarties. Atidarius susitraukiančią plėvelę, prekės grąžinti negalima. Tiesą sakant, tai verčia vartotoją susitarti. Tokios teisinės bylos baigtis priklauso nuo teismo, kuriame ji nagrinėjama, tačiau dauguma pripažino, kad programinės įrangos licencijavimas „sutraukiamas įvyniojimas“ yra negaliojantis. Tai neturi būti klaidingai aiškinama kaip galutinis dalykas, nes mažuma teismų nusprendė kitaip.
Programinės įrangos licencijavimas skiriasi priklausomai nuo programinės įrangos tipų. Nemokamos programinės įrangos licencijavimas yra mažiau ribojantis nei mažmeninė ar dalijimosi programinė įranga, nes ji leidžia neribotą kopijavimą ir platinimą, tuo pačiu uždraudžiant bet kokius programos pakeitimus. Viešojo domeno programinė įranga yra vienintelė licencijavimo rūšis, kuriai nėra jokių apribojimų, nes programinė įranga priklauso visuomenei.