It will depend upon the nature of the information that you're trying to compress and the quantity of redundant and irrelevant data (see Shannon's work on Information Theory and self-information, for more info). It's also worth remembering that the 'compression amount' applied in the JPEG algorithm changes the threshold values for irrelevant data.
In many cases, the DCT will do the majority of the work to help reduce the image size, before quantization and Huffman coding are used to represent the remaining data.
Entropy coding (huffman) is lossless, which should not add to much compression ratio.
DCT transform is packing information in few number of transform coefficient. However, with quantization, JPEG zero outs many coefficient and thus save bit without reducing to much quality.
Answers of Stuart Cunningham and Thuong Nguyen Canh are recommended. Just would like to elaborate one point, quantization of DCT coefficients results in many values set to zeros. These values are scan in zig-zag order to produce long sequence of zeros which are encoded using run-length coding. Non-zero DCT coefficients can be entropy encoded.