If you do a static export, you don’t have a server to optimize images. It’s just a bunch of static files. The only way to optimize the image is to point to a service through the loader.
Also, the image optimization on the default Next.js server, for example deployed to a $4 VPS, also works without Vercel.
Next should have the same functionality that Gatsby had when doing a static export: pre-optimised images for different breakpoints that are created at build time. That would be a truly portable solution.
that is simply not true, there are static export, 3rd party image optimizers [0] (that re-use <Image />) - just vercel does not care about theirs for static export. Also, look at how gatsby does without cloud/server hosted images.
Also, the image optimization on the default Next.js server, for example deployed to a $4 VPS, also works without Vercel.