Tombol lunak adalah kunci pada komputer atau ponsel yang dapat diprogram untuk melakukan beberapa fungsi berbeda yang dipilih pengguna. Sebagian besar tombol, termasuk huruf pada keyboard komputer dan angka pada ponsel, dianggap sebagai “tombol keras” karena tidak dapat diprogram ulang. Menekan tombol “K” akan selalu mengetik huruf itu, misalnya, sama seperti menekan “7” pada telepon akan memanggil nomor itu. Tombol lunak adalah tombol yang fungsinya terserah pada kebijaksanaan pengguna.
Pada sebagian besar keyboard komputer, “fungsi,” atau “tombol F,” memiliki fleksibilitas tombol yang diperlukan untuk menjadi tombol lunak. Pengguna biasanya dapat memprogram kunci semacam ini melalui panel kontrol atau pengaturan preferensi desktop komputer mereka. Perintah umum untuk tombol ini termasuk membuka aplikasi tertentu, meluncurkan browser web, mengeluarkan disk atau perangkat eksternal lainnya, dan menyimpan konten yang dimasukkan ke dalam pengolah kata atau template web.
Jarang ada batasan pada tombol apa yang dapat diprogram untuk dilakukan. Tombol-tombol ini biasanya dapat menduplikasi perintah tombol pintas lainnya dan dapat diperbarui setiap saat. Tujuan utamanya adalah untuk mempromosikan kontrol dan kemudahan penggunaan.
Pemrograman juga tidak pernah permanen. Pengguna biasanya dapat mengubah fungsi tombol berulang kali. Komputer melacak pembaruan dan perubahan ini di pencatat internalnya.
Tombol lunak pada ponsel bekerja dengan cara yang hampir sama. Ponsel tradisional — yaitu ponsel yang bukan ponsel cerdas, atau berbasis di sekitar keypad numerik tradisional daripada keyboard — biasanya memiliki dua tombol lunak langsung di bawah layar, satu di kanan dan satu di kiri. Sebagian besar waktu, setiap kunci dilengkapi dengan fungsi ketika datang dari pabrikan. Tombol-tombol ini sering memulai peluncuran menu telepon atau membuka buku telepon. Pengguna dapat memprogram ulang mereka agar sesuai dengan kebutuhan individu mereka sendiri.
Tergantung pada telepon, bahkan tombol angka mungkin dapat berfungsi sebagai tombol semi-lunak. Kunci angka bukanlah kunci lunak yang sebenarnya, karena memori angkanya tidak akan pernah bisa diambil. Sebagian besar ponsel dirancang untuk mengenali perbedaan dalam ketukan pendek dan dorongan panjang, namun, yang menciptakan lebih banyak opsi.
Pada kebanyakan ponsel, tiga angka pertama — 1, 2, dan 3 — dapat diprogram sebagai tombol panggil cepat. Menekan tombol sebentar akan memasukkan angka ke dalam bingkai panggilan, tetapi menahan tombol angka untuk jangka waktu yang lebih lama akan memicu telepon untuk memanggil nomor yang telah diprogram. Dalam hal ini, tombol angka bertindak sebagai tombol lunak karena telah diprogram oleh pengguna untuk melakukan tugas tertentu.
Istilah ini memiliki arti yang sedikit berbeda pada smartphone dengan keyboard layar sentuh atau keyboard yang muncul secara grafis di perangkat tampilan layar, daripada menjadi tombol tetap. Banyak produsen menyebut jenis keyboard ini sebagai “keyboard tombol lunak”. Ini lebih berkaitan dengan sifat fisik keyboard daripada fungsinya: tombol-tombolnya lembut saat disentuh, tetapi belum tentu dapat diprogram ulang.