Pembandingan perangkat lunak biasanya mengacu pada proses di mana siklus pengembangan produsen perangkat lunak dibandingkan dengan bisnis lain untuk menentukan efisiensi perusahaan. Hal ini sering dilakukan untuk menentukan di mana perbaikan dapat dilakukan pada proses pengembangan, dan untuk memastikan bahwa perusahaan berjalan pada efisiensi puncak. Perbandingan ini biasanya bersifat kuantitatif, karena berhubungan dengan nilai numerik dan angka untuk mengukur seberapa cepat dan efektif kinerja perusahaan. Jenis pembandingan perangkat lunak ini tidak boleh disamakan dengan pembandingan perangkat keras komputer, yang mengevaluasi efektivitas berbagai perangkat dan komputer.
Tujuan utama dari pembandingan perangkat lunak adalah untuk menentukan seberapa baik kinerja satu pengembang perangkat lunak bila dibandingkan dengan yang lain. Awalnya, informasi tentang pengembang perlu dikumpulkan dan dipertimbangkan dengan cara yang dapat diukur. Lamanya waktu yang dibutuhkan perusahaan tersebut untuk membuat program terbarunya, waktu yang dibutuhkan untuk memperbaiki bug dan untuk merilis patch, dan jumlah pemrogram yang terlibat dalam proses ini semuanya dapat dipertimbangkan. Setelah data ini dikumpulkan, maka dapat digunakan dalam pembandingan perangkat lunak terhadap perusahaan lain menggunakan metrik yang sebanding.
Perusahaan pihak ketiga sering terlibat dalam pembandingan perangkat lunak, dengan mengumpulkan informasi tentang banyak pengembang, yang sering disediakan oleh bisnis tersebut untuk perbandingan. Sebuah perusahaan benchmarking mungkin memiliki data dari beberapa lusin, atau bahkan seratus, pengembang perangkat lunak yang merinci nilai terukur untuk waktu yang dihabiskan dalam pengembangan, biaya untuk proses ini, dan pencapaian berdasarkan jumlah pemrogram. Perbandingan kemudian dibuat oleh organisasi ini antara pengembang yang berbeda ini, dan digunakan untuk menetapkan sejumlah nilai untuk masing-masing pengembang. Setelah proses ini selesai, maka setiap perusahaan dapat diberi tahu tentang seberapa baik kinerjanya dalam kumpulan yang lebih besar ini dan dapat menggunakan data pembandingan perangkat lunak ini untuk menentukan perbaikan yang harus dilakukan untuk pengembangan di masa mendatang.
Jenis pembandingan perangkat lunak ini agak mirip dengan pembandingan perangkat keras, tetapi mereka tidak boleh bingung. Tolok ukur perangkat keras sering ditentukan dengan menjalankan berbagai pengaturan komputer dan perangkat keras melalui berbagai tes untuk menghasilkan data tentang perangkat tersebut. Data ini kemudian digunakan untuk membandingkan perangkat keras yang berbeda, untuk menentukan prosesor atau kartu grafis apa yang secara teoritis lebih unggul dari yang lain dalam konteks tertentu.
Ada bentuk pembandingan perangkat lunak yang dapat dilakukan dengan cara yang mirip dengan ini, meskipun lebih sering dianggap sebagai bagian dari pengujian dukungan. Program yang sama dapat dijalankan di banyak komputer dengan perangkat dan pengaturan perangkat keras yang berbeda, untuk melihat sistem apa yang kompatibel dengannya. Jenis pembandingan ini sering digunakan untuk menentukan persyaratan minimum untuk suatu program dan untuk memastikan bahwa basis pengguna seluas mungkin dapat menjalankan perangkat lunak.