gatsby-plugin-image still reads the file
Sharp generates multiple widths and formats. Starting from a 200 KB WebP instead of a 4 MB JPEG is the same visual result at quality 80 and a much shorter Sharp queue.
Why it matters
- CI timeouts on image-heavy blogs are common.
- Contentful/Sanity sourced nodes can still be huge remotes.
- Local conversion avoids another npm plugin.
How to do it
- Convert local image directories.
- For CMS, convert before upload (see Contentful/Sanity guides).
- Keep gatsby-plugin-image; just feed it saner files.
Settings that work
1600 px / 80%. Match maxWidth in your GraphQL fragments.