Scopul lui este de a da utilizatorilor de calculatoare libertate și control în folosirea calculatoarelor și a dispozitivelor, fiind dezvoltat prin colaborare și furnizând un soft care este bazat pe următoarele libertați esențiale:
Libertatea 0 — De a utiliza programul în orice scop.
Libertatea 1 — De a studia modul de funcționare a programului și de a-l adapta nevoilor proprii. Accesul la codul-sursă este o precondiție pentru aceasta.
Libertatea 2 — De a redistribui copii, în scopul ajutorării aproapelui, gratuit sau contra unei sume de bani.
Libertatea 3 — De a îmbunătăți programul și de a pune îmbunătățirile la dispoziția publicului, în folosul întregii societăți.
Motivul pentru care acestea sunt numerotate 0, 1, 2 și 3 este unul istoric. În jurul anului 1990 existau trei libertăți, numerotate 1, 2 și 3. După aceea, proiectul GNU și-a dat seama că libertatea de a executa programul trebuie menționată explicit. Era evident că aceasta este mai rudimentară decât celalalte trei, așa că trebuia să fie menționată înaintea acestora. Decât să le renumeroteze pe primele 3, au numit această libertate libertatea 0.[1]