Zu Beginn werden die Dateneinheiten mittels einer diskreten Kosinus-Transformation "`DCT"' kodiert, wobei der Werte Bereich der Pixel in das um den Nullpunkt symmetrische Intervall [-128,127] verschoben wird. Diese Dateneinheiten werden als bezeichnet.
Für jeden dieser transformierten Werte wird die folgende Forward-DCT ("`FDCT"') angewendet:
Diese Transformation ist 88 = 64 mal anzuwenden. In Anlehnung der DCT an die diskrete Fouriertransformation DFT, die den Zeitraum in den Frequenzraum abbildet, kann jeder Koeffizient als Angabe einer zweidimensionalen Frequenz verstanden werden.Der Koeffizient entspricht dem Anteil der Frequenz Null in beiden Achsen. Er wird auch als DC-Koeffizient (Gleichspannunganteil) bezeichnet und bestimmt die Grundfarbe für die gesammte Dateneinheit. Die übrigen werden als AC-Koeffizienten (Wechselspannungsanteil) bezeichnet.
Die Dekodierung erfolgt mit Inverse DCT ("`IDCT"'), wobei die Koeffizienten einzusetzen sind:
Aufgrund von Rechenungenauigkeiten, ist die DCT verlustbehaftet. Der JPEG-Standart schreibt lediglich die maximale Genauigkeitstoleranzen vor, was dazu führen kann, daß verschiedenen JPEG-Dekoder aus dem gleichen komprimierten Quellcode Bilder unterschiedlich guter Qualität liefern [Ste93b].