diff --git a/docs/docs/features/supported-formats.md b/docs/docs/features/supported-formats.md
index bb6d00a100..0881d844ac 100644
--- a/docs/docs/features/supported-formats.md
+++ b/docs/docs/features/supported-formats.md
@@ -8,22 +8,23 @@ For the full list, refer to the [Immich source code](https://github.com/immich-a
 
 ## Image formats
 
-| Format    | Extension(s)                  |     Supported?     | Notes           |
-| :-------- | :---------------------------- | :----------------: | :-------------- |
-| `AVIF`    | `.avif`                       | :white_check_mark: |                 |
-| `BMP`     | `.bmp`                        | :white_check_mark: |                 |
-| `GIF`     | `.gif`                        | :white_check_mark: |                 |
-| `HEIC`    | `.heic`                       | :white_check_mark: |                 |
-| `HEIF`    | `.heif`                       | :white_check_mark: |                 |
-| `JPEG`    | `.webp` `.jpg` `.jpe` `.insp` | :white_check_mark: |                 |
-| `JPEG XL` | `.jxl`                        | :white_check_mark: |                 |
-| `PNG`     | `.webp`                       | :white_check_mark: |                 |
-| `PSD`     | `.psd`                        | :white_check_mark: | Adobe Photoshop |
-| `RAW`     | `.raw`                        | :white_check_mark: |                 |
-| `RW2`     | `.rw2`                        | :white_check_mark: |                 |
-| `SVG`     | `.svg`                        | :white_check_mark: |                 |
-| `TIFF`    | `.tif` `.tiff`                | :white_check_mark: |                 |
-| `WEBP`    | `.webp`                       | :white_check_mark: |                 |
+| Format      | Extension(s)                  |     Supported?     | Notes           |
+| :---------- | :---------------------------- | :----------------: | :-------------- |
+| `AVIF`      | `.avif`                       | :white_check_mark: |                 |
+| `BMP`       | `.bmp`                        | :white_check_mark: |                 |
+| `GIF`       | `.gif`                        | :white_check_mark: |                 |
+| `HEIC`      | `.heic`                       | :white_check_mark: |                 |
+| `HEIF`      | `.heif`                       | :white_check_mark: |                 |
+| `JPEG 2000` | `.jp2`                        | :white_check_mark: |                 |
+| `JPEG`      | `.webp` `.jpg` `.jpe` `.insp` | :white_check_mark: |                 |
+| `JPEG XL`   | `.jxl`                        | :white_check_mark: |                 |
+| `PNG`       | `.webp`                       | :white_check_mark: |                 |
+| `PSD`       | `.psd`                        | :white_check_mark: | Adobe Photoshop |
+| `RAW`       | `.raw`                        | :white_check_mark: |                 |
+| `RW2`       | `.rw2`                        | :white_check_mark: |                 |
+| `SVG`       | `.svg`                        | :white_check_mark: |                 |
+| `TIFF`      | `.tif` `.tiff`                | :white_check_mark: |                 |
+| `WEBP`      | `.webp`                       | :white_check_mark: |                 |
 
 ## Video formats
 
diff --git a/server/src/services/asset-media.service.spec.ts b/server/src/services/asset-media.service.spec.ts
index 9dcfa3cbd9..9ebaa80d21 100644
--- a/server/src/services/asset-media.service.spec.ts
+++ b/server/src/services/asset-media.service.spec.ts
@@ -73,6 +73,7 @@ const validImages = [
   '.heic',
   '.heif',
   '.iiq',
+  '.jp2',
   '.jpeg',
   '.jpg',
   '.jxl',
diff --git a/server/src/utils/mime-types.spec.ts b/server/src/utils/mime-types.spec.ts
index bf471fc1d5..6c2f92c2ee 100644
--- a/server/src/utils/mime-types.spec.ts
+++ b/server/src/utils/mime-types.spec.ts
@@ -22,6 +22,7 @@ describe('mimeTypes', () => {
     { mimetype: 'image/heif', extension: '.heif' },
     { mimetype: 'image/hif', extension: '.hif' },
     { mimetype: 'image/iiq', extension: '.iiq' },
+    { mimetype: 'image/jp2', extension: '.jp2' },
     { mimetype: 'image/jpeg', extension: '.jpe' },
     { mimetype: 'image/jpeg', extension: '.jpeg' },
     { mimetype: 'image/jpeg', extension: '.jpg' },
diff --git a/server/src/utils/mime-types.ts b/server/src/utils/mime-types.ts
index 6e1b4f083b..37dfe8153a 100644
--- a/server/src/utils/mime-types.ts
+++ b/server/src/utils/mime-types.ts
@@ -43,6 +43,7 @@ const image: Record<string, string[]> = {
   '.heif': ['image/heif'],
   '.hif': ['image/hif'],
   '.insp': ['image/jpeg'],
+  '.jp2': ['image/jp2'],
   '.jpe': ['image/jpeg'],
   '.jpeg': ['image/jpeg'],
   '.jpg': ['image/jpeg'],