---
title: "JPEGs"
description: "Learn how to generate JPEG images instead of PNG for Nuxt OG Image."
canonical_url: "https://nuxtseo.com/docs/og-image/guides/jpegs"
last_updated: "2026-05-09T10:32:04.835Z"
---

The default image extension generated by Nuxt OG Image for Satori images is a `png`.

PNGs are great for most use cases, but they come at the cost of a larger file size.

The module supports rendering JPEGs instead of PNGs, but it requires Sharp. The module disables this by default as Sharp is a heavy dependency and [compatibility](/docs/og-image/renderers) is limited.

If you're prerendering your images or using a Node based environment, you can enable Sharp to render JPEGs.

Browser rendering uses `jpeg` images by default.

## Setup

To install Sharp, you need to install the `sharp` dependency:

<code-group>

```sh [pnpm]
pnpm i -D sharp
```

```bash [yarn]
yarn add -D sharp
```

```bash [npm]
npm install -D sharp
```

</code-group>

Now you can change your default extension to either `jpeg` or `jpg`.

```ts [nuxt.config.ts]
export default defineNuxtConfig({
  ogImage: {
    defaults: {
      extension: 'jpeg',
    }
  },
})
```

## Best Practices

While JPEGs are smaller, they are lossy.

- **Use PNG** (default) for images with **text**, **logos**, or **flat colors**. This ensures sharp edges and readability.
- **Use JPEG** for images that are primarily **photographs** or have complex gradients, where file size savings are significant.

**Note:** Most social platforms (Twitter, Facebook, etc.) will convert your image to JPEG and compress it again. Uploading a crisp PNG often results in a better final quality than uploading an already-compressed JPEG (avoiding "double compression" artifacts).
