Program CNC adalah serangkaian instruksi numerik yang digunakan oleh mesin CNC untuk melakukan urutan operasi yang diperlukan dalam mengerjakan benda kerja tertentu. Terdapat tiga metode pemrograman, yaitu pemrograman manual, conversational (dikenal juga dengan shop floor programing), dan pemrograman menggunakan CAM (Computer Aided Manufacturing). Masing – masing metode memiliki kelebihan dan kekurangan dalam penerapannya.
Pemrograman manual dilakukan dengan Menyusun parameter dan kode gerakan secara langsung. Program ini berbentuk kode huruf dan angka yang ditulis pada lembar program CNC dan kemudian di-input secara manual ke mesin CNC. Metode conversational, juga dikenal sebagai G Wizard memungkinkan pembuatan program langsung pada panel kontrol CNC dengan menggunakan menu perintah buku yang telah tersedia (misalnya membuat kontur, ulir, alur, dll). Pemrograman dilakukan dengan memilih menu dan mengisi data seperti gerak makan, diameter, kedalaman potong, dan arah proses. Setelah itu kode G akan muncul pada layar mesin. Pemrograman CNC Conversational sangat ideal untuk operasi pemesinan Tunggal, di mana jumlah benda kerja hanya satu.
Pembuatan program menggunakan CAM dilakukan dengan menggambar bentuk benda kerja menggunakan perangkat lunak CADCAM, kemudian komputer menghasilkan jalur alat potong (toolpath) berdasarkan gambar tersebut. Semua metode pemrograman ini menghasilkan keluaran berupa program CNC dalam bentuk kode G, yaitu kode gerakan alat potong yang dapat dibaca dan dijalankan oleh sistem kontrol CNC. Pada bab ini, pembahasan difokuskan pada metode pemrograman manual karena metode ini dapat diterapkan pada semua jenis mesin CNC. Proses memasukkan program CNC ke mesin dapat dilakukan melalui beberapa alat input data, yaitu: USB, memory card, dan LAN Card.