Normalisasi database adalah pendekatan untuk merancang database yang diperkenalkan oleh Edgar F. Codd pada tahun 1970-an. Database tertentu, yang dikenal sebagai database relasional, memungkinkan data disimpan dalam kelompok-kelompok terpisah. Setiap kelompok biasanya disebut tabel. Untuk menyediakan informasi yang berguna, kelompok-kelompok ini dihubungkan satu sama lain. Misalnya, siswa dapat disimpan dalam satu grup, dan kelas dalam grup lain. Untuk menunjukkan bahwa seorang siswa terdaftar di kelas, sebuah "hubungan" dibuat dari satu grup ke grup lainnya. Seorang siswa bisa memiliki hubungan ke banyak kelas, yang masing-masing akan terdaftar di dalamnya, sementara kelas akan memiliki hubungan ke banyak siswa.

Alternatif tradisional adalah "flat file database", di mana semua data dikelompokkan bersama seperti dalam spreadsheet. Masalah dengan database flat file adalah bahwa database ini bisa memiliki banyak ruang kosong dan ada banyak informasi yang harus diulang untuk setiap entri. Ini berarti database lebih besar dari yang seharusnya, dan itu membuatnya lebih mungkin bahwa database akan mengandung kesalahan. Basis data relasional, dengan memecah data ke dalam kelompok-kelompok, mengurangi kemungkinan kesalahan yang terjadi dan tidak mengambil lebih banyak ruang daripada yang diperlukan. Tetapi agar dapat bekerja, database harus dirancang dengan baik.

Normalisasi database adalah metode untuk merancang database relasional yang baik. Ada beberapa "bentuk normal", yang masing-masing memiliki aturan yang harus dipenuhi oleh database. Codd pada awalnya menentukan tiga set kriteria yang harus dipenuhi oleh database yang berbeda: bentuk normal pertama, kedua dan ketiga.

Jika sebuah relasi (atau "tabel database") memenuhi bentuk normal tertentu, maka relasi tersebut tidak rentan terhadap modifikasi tertentu, yang akan mempengaruhi integritas data. Kelemahan dari memenuhi seperangkat kriteria seperti itu biasanya adalah bahwa query data tertentu dari database akan menjadi lebih sulit.