Veri sıkıştırmak veya kaynak verinin kodlanması basit olarak aynı bilginin farklı ve daha kısa yollarla ifade edilmesi anlamına gelir. “Örnek olarak şu anda okuduğunuz yazı” cümlesini “Örnek: okuduğun yazı” şeklinde kısaltmak veya sıkıştırmak kelimesini “sıkış.” şeklinde kısaltmak olarak gösterebiliriz. Tabii tüm iletişimlerde olduğu gibi bir veriyi sıkıştırmayı anlamlı kılmak karşı tarafın alınan veriyi anlamasına bağlıdır. Bu sebeple veriyi kodlayan (encoder) programların yanında veriyi çözen (decoder) programların iletişime geçen her iki tarafta da bulunması gerekir.
Sıkıştırma işinde iki yol mevcuttur. Bunlardan birincisi Kayıpsız (Lossless) sıkıştırmadır. Bu yöntem ses, görüntü ve yazı sıkıştırma için kullanılabilir. Bu yöntemde sıkıştırma yapmak için istatistiki verilerden yararlanılır. Örnek olarak Türkçe dilbilgisi kurallarına göre herhangi bir sesli harften sonra sessiz gelmesi daha olası iken sessiz harften sonra tekrar bir sessizin gelmesi daha düşük bir ihtimal ve ikinci bir sessizden sonra bir üçüncüsünün gelmesi daha da düşük bir ihtimaldir. Kayıpsız sıkıştırma (Lossless Compression) algoritmalar kullanırken bu ve buna benzer istatistiklerden yararlanır.
Kayıpsız sıkıştırma formatına birkaç örnek ZIP, GIF ve PNG dosya formatlarıdır. Bunun yanında TIFF ve MNG ise hem kayıpsız hem de kayıplı (Lossy) algoritmaları kullanan dosya formatlarına iki örnek olarak gösterilebilir. Kayıplı (Lossy) sıkıştırma metodundaysa daha çok ses, görüntü ve hareketli görüntü işlenmektedir. Bu yöntem daha fazla sıkıştırmaya imkan verirken orijinal veride kayıplar oluşur. Örnek olarak hareketli veya hareketsiz bir görüntüde meydana gelebilecek bazı kayıplar insan gözüyle algılanamayabilir. Bir ses dosyasında bazı kanalların verilmemesi çıktılarda insan kulağı tarafından algılanamayabilir veya algılansa da asıl mesajın anlamını bozmayabilir. Bu varsayımdan hareketle kayıplı sıkıştırma algoritmaları aslında orijinal belgenin tamamını vermeden veya bazı kısımlarını eksik vererek iletebilmektedirler. Sıkıştırma bilgi işlem teknolojisinin tüm alanlarında kullanılmakta ve birçok işlem için büyük yarar sağlamaktadır.
Yararları arasında gerekli olan disk alanını azaltmak veya daha az yer tutarak bant genişliğini idareli kullanmak örnekleri verilebilir. Bilgi işlem şirketleri sıkıştırmanın bu yönlerini bilmektedirler fakat dikkate almaları gereken bir konu daha vardır: Sıkıştırılmış veriyi çözmek için gereken bilgisayar gücü. Bir belgeyi ne kadar sıkıştırırsanız sıkıştırın, alıcının sıkıştırılmış formatı çözme süresi bazı uygulamalarda yapılan işin amacını anlamsız kılacak derecede yavaş kalabilir. Bu yüzden pratik uygulamalarda, örneğin mesajlaşma uygulamaları veya VoIP programları veriyi olabildiğince sıkıştırabilecek algoritmalar kullanırken bu verilerin de çok kısa sürelerde bilgisayarlar tarafından çözülmesini sağlamak zorundadırlar.