Serve WebP and
support browsers
Image container If browser
supports WebP
Else PNG it is
Slide 32
Slide 32 text
Image Compression
Slide 33
Slide 33 text
Lossy Image
For most images, 80-85% quality will
reduce file size by 30-40% with
minimal effect on image quality
Slide 34
Slide 34 text
495 kb 180 kb (80% quality)
Lossy Image
Slide 35
Slide 35 text
Responsive Image
Slide 36
Slide 36 text
Image in desktop & tablet can be
~2-4x larger than mobile
28 kb
12 kb
Slide 37
Slide 37 text
Serve different
image sizes
Small screen and if
browser supports WebP
https://developer.mozilla.org/en-US/docs/Learn/HTML/
Multimedia_and_embedding/Responsive_images
Slide 38
Slide 38 text
squoosh.app
resize, compress, format
Or automate with these npm packages:
imagemin, sharp, jimp
Slide 39
Slide 39 text
Lazy Loading
Slide 40
Slide 40 text
No content
Slide 41
Slide 41 text
No content
Slide 42
Slide 42 text
No content
Slide 43
Slide 43 text
Performant Images
➔ Is lazy
➔ Appropriate format
➔ Appropriate compression
➔ Appropriate display size
Slide 44
Slide 44 text
Fonts
Slide 45
Slide 45 text
No content
Slide 46
Slide 46 text
“Flash of Unstyled Text” (FOUT)
Arial
Slide 47
Slide 47 text
“Flash of Unstyled Text” (FOUT)
Google
Sans
Slide 48
Slide 48 text
Flash of Unstyled
Text (FOUT)
@font-face {
font-family: Google Sans', sans-serif;
src: url('...') format('woff');
font-display: swap;
} Display unstyled text until
font loaded
.5s improvement in
“Visual Complete” on 3G