フリーソフトウェア財団は自由ソフトウェアの定義を提示している。ソフトウェアライセンスについては自由ソフトウェアライセンスを参照。定義に照らして自由ではない、すなわち改造や再配布などに制限が掛かっていたり、ソースコードが開示されていない、無償で利用できるソフトウェアとは異なる概念であり、フリーウェアと自由ソフトウェアを混同しないようフリーソフトウェア財団は呼びかけている。逆に定義に従ったソフトウェアであれば、一次的な配布が有償であっても自由ソフトウェアと呼ぶことができる。ただし、前述したように配布が自由であるため、ほとんどの自由ソフトウェアは無償で配布されている。自由なソフトウェアと、無償のソフトウェア.無償のソフトウェア.フリーウェアを参照のこと。自由なソフトウェア.コンパイルした成果物だけでなく、ソースコードが入手可能であり、さらに、その改変と再配付も自由である必要がある。自由ソフトウェアは、著作権を放棄した「パブリックドメインソフトウェア」(PDS)とは異なる。一見矛盾しているように見えるかも知れないが、自由ソフトウェアは(自身が自由であるための手段として)著作権を明確に主張し、そのライセンスの文中で自由を規定するという方法を取っている。現在、GNU/Linuxとして知られる自由ソフトウェアのオペレーティングシステムのプロジェクト:GNUを始めるに当たって、作られるソフトウェアの自由を保証するために、自由ソフトウェアの概念を定義した。GNUは自由ソフトウェアのみで構成されるというわけである。自由ソフトウェアとして認められるライセンスには、二通りある。自由と無料の比較.ソースコードが公開されなければ、自由なソフトウェアではない。ソフトウェアを自由に変更・配布することはソースコード無しには極めて困難だからである。しかし、ソースコードが付属していても、ソースコードを改変したり配布したりする自由が制限されていれば自由なソフトウェアとは言えない。