WordPress doesn’t use 100% quality for images served on the website, to conserve space and bandwidth.
add_filter( 'jpeg_quality', 'smashing_jpeg_quality' );
function smashing_jpeg_quality() {
return 100;
}
WordPress uses a default quality of 90%. This is fine in most cases; if top-notch image quality is a must on your website (for a portfolio, photography, etc.), modifying the value might be best.