Menurut Wikipedia, Mesin pencari adalah program komputer yang dirancang untuk membantu seseorang menemukan file-file yang disimpan dalam komputer, misalnya dalam sebuah server umum di web (WWW) atau dalam komputer sendiri. Mesin pencari memungkinkan kita untuk meminta content media dengan kriteria yang spesifik (biasanya yang berisi kata atau kata kunci yang kita tentukan) dan memperoleh daftar file yang memenuhi kriteria tersebut. Mesin pencari biasanya menggunakan indeks (yang sudah dibuat sebelumnya dan dimutakhirkan secara teratur) untuk mencari file setelah pengguna memasukkan kriteria pencarian.
Dalam konteks Internet, mesin pencari biasanya merujuk kepada WWW dan bukan protokol ataupun area lainnya. Selain itu, mesin pencari mengumpulkan data yang tersedia di newsgroup, database besar, atau direktori terbuka seperti DMOZ.org. Karena pengumpulan datanya dilakukan secara otomatis, mesin pencari berbeda dengan direktori Web yang dikerjakan manusia. Sebagian besar mesin pencari dijalankan oleh perusahaan swasta yang menggunakan algoritma kepemilikan dan database tertutup – yang paling populer adalah Google (lihat gambar 1.0), Bing dan Yahoo!. Saat ini telah ada beberapa upaya menciptakan mesin pencari dengan sumber-terbuka (open source), contohnya adalah Htdig, Nutch, Egothor dan OpenFTS.
Mesin pencari pada umumnya menggunakan beberapa metode berikut ini untuk mengumpulkan data pada server WWW :
1. Spider/Crawler, bertugas melakukan kunjungan ke suatu website, membaca isi web dan menelusuri berbagai link (tautan) yang terdapat di website tersebut. Crawler biasanya dilakukan tiap periode tertentu tergantung seberapa sering website tersebut melakukan perubahan.
2. Indexing, merupakan proses mengkatalogkan isi dari website tersebut menjadi serangkaian kata-kata yang diambil dari isi web sehingga website akan lebih mudah dikenali oleh mesin pencari dalam suatu kategori tertentu.
3. Query, bertugas memilah ribuan data dalam katalog yang berisi halaman-halaman situs web tadi, mencocokannya sesuai dengan permintaan pengguna internet dan kemudian menampilkan datanya sesuai urutan ranking masing-masing website tersebut.
Dengan mengetahui cara kerja search engine, maka kita akan lebih mudah mengoptimalisasi website dengan tehnik SEO yang akan kita bahas kemudian.