> ## Documentation Index
> Fetch the complete documentation index at: https://gcore-doc-1894.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Possible Image Stack errors

A successfully converted image returns status 200, the converted content in the body, and the following response headers:

* X-Img-Server
* headers from origin
* X-IMG-Saved-Bytes
* X-IMG-Origin-Download-Time
* X-IMG-Processing-Time
* `"Content-Type":"{image/webp or image/avif}"`
* Content-Length
* X-GCDN-Origin-Size

Problems can occur when using [Image Stack](/cdn/cdn-resource-options/image-optimization-paid/about-image-stack) — an image may be delivered in its original state without processing, or may not appear on the page at all.

<Frame>
  <img src="https://mintcdn.com/gcore-doc-1894/9U1xXa0egFyWElxm/images/docs/cdn/cdn-resource-options/image-optimization-paid/possible-image-stack-errors/image3733.png?fit=max&auto=format&n=9U1xXa0egFyWElxm&q=85&s=6837c008571ac33966ff39c8c12c3441" alt="Troubleshooting overview" width="3848" height="1860" data-path="images/docs/cdn/cdn-resource-options/image-optimization-paid/possible-image-stack-errors/image3733.png" />
</Frame>

## Check image details

Browser developer tools expose the status code, response headers, and body of each image request.

1\. Navigate to the page containing the Image Stack images and open the developer tools (Ctrl+Shift+I for Chrome)

2\. Navigate to the **Network** tab at the top

3\. In the list of network requests on the left, click the image request to examine

4\. Use the **Headers** tab to view the response headers and status code

<Frame>
  <img src="https://mintcdn.com/gcore-doc-1894/9U1xXa0egFyWElxm/images/docs/cdn/cdn-resource-options/image-optimization-paid/possible-image-stack-errors/image1.png?fit=max&auto=format&n=9U1xXa0egFyWElxm&q=85&s=b000481bba5c5022e85a52e0d64c03d7" alt="How to check an image's details for troubleshooting" width="1920" height="931" data-path="images/docs/cdn/cdn-resource-options/image-optimization-paid/possible-image-stack-errors/image1.png" />
</Frame>

Identify the error by comparing the status code, response headers, and body output with the cases below.

## Common errors that result in a broken image

These errors prevent the image from loading and return a non-200 HTTP status code.

| **Error**                                           | **Details**                                                                                                          | **Causes**                                                                                                                                                 | **Solutions**                                                                                                                                                 |
| --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Incorrect image request method                      | **Status**: 405<br />**Response Headers**: X-GCDN-Img-Server<br />**Body**: `"error": "method not found"`            | The used request method is not GET                                                                                                                         | Use the GET request method                                                                                                                                    |
| Incorrect format for conversion in headers or query | **Status**: 400<br />**Response Headers**: X-Img-Server<br />**Body**: `"error": "only webp format supported"`       | Image Stack is configured for WebP-only conversion and the request specifies AVIF or another unsupported format via the `fmt` parameter or `Accept` header | Set the format to WebP, or enable AVIF support in the Image Stack settings                                                                                    |
| Image Stack internal error                          | **Status**: 500<br />**Response Headers**: X-Img-Server<br />**Body**: `"error": "<err>"`                            | Internal Image Stack error                                                                                                                                 | Contact our technical support team at [support@gcore.com](mailto:support@gcore.com)                                                                           |
| Origin timeout                                      | **Status**: 504<br />**Response Headers**: X-Img-Server<br />**Body**: `"error": "request to origin timeout: <err>"` | The origin did not respond                                                                                                                                 | Fix outages at the origin                                                                                                                                     |
| Too many requests to the origin                     | **Status**: 504<br />**Response Headers**: X-Img-Server<br />**Body**: `"error": "too many requests"`                | The origin is receiving too many requests                                                                                                                  | Reduce the number of requests to the origin with the paid [Origin Shielding](/cdn/cdn-resource-options/general/enable-and-configure-origin-shielding) feature |

## Errors that return the original image

<Note>The request body is proxied from the origin. The response headers include X-Img-Server and headers from the origin. The status code is 200 OK.</Note>

| **Error**                                                  | **Details**                                                                                                                                     | **Causes**                                                                                                          | **Solutions**                                                                                                                                                                                                                         |
| ---------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Unsupported content type from the origin for the converter | **Response Header**: `"IMG-SKIP-REASON":"detected content type <content type> is not supported"`                                                | The image format is not supported                                                                                   | Change the image format to JPG or PNG                                                                                                                                                                                                 |
| Quality difference skips for jpeg                          | **Response Header**: `"IMG-SKIP-REASON":"{webp/avif} will be bigger, than origin: OriginQ: <origin quality>, DesiredQ: <desired jpeg quality>"` | Compression occurred incorrectly; the quality of the processed image is greater than or equal to the original image | Verify that the original image is not already optimized — the [official WebP guide](https://developers.google.com/speed/webp/faq#can_a_webp_image_grow_larger_than_its_source_image) explains when compression may increase file size |
| Invalid response code from the origin                      | **Response Header**: `"IMG-SKIP-REASON":"not valid response code from the origin; response code — {response code from client’s origin}"`        | The origin responded to Image Stack with a non-200 response code and Image Stack could not retrieve the image       | Verify that the origin responds with a 200 status code                                                                                                                                                                                |

## Compression and quality operation errors

<Note>The request body is proxied from the origin. The response headers include X-Img-Server and headers from the origin. The status code is 200 OK.</Note>

| **Error**                                                           | **Details**                                                                                                               | **Causes**                                                                                                                                        | **Solutions**                                                                                                                                                                                                     |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Rate limit exceeded                                                 | **Response Header**: `"IMG-SKIP-REASON":"compression: rate limit is exceeded"`                                            | The rate limit for conversions to WebP and AVIF formats has been exceeded                                                                         | Wait for the limit to renew, or request a limit increase by contacting [support@gcore.com](mailto:support@gcore.com)                                                                                              |
| Bad quality parameter                                               | **Response Header**: `"IMG-SKIP-REASON":"compression: bad quality parameter"`                                             | The quality parameter is invalid; we can't convert the quality value to a number                                                                  | Set the quality parameter to an integer between 1 and 100                                                                                                                                                         |
| Unsupported format of the fmt value                                 | **Response Header**: `"IMG-SKIP-REASON":"compression: unsupported format of the fmt query parameter"`                     | The request attempted to convert an image to an unsupported format                                                                                | Set WebP or AVIF as the fmt value according to the [guide](/cdn/cdn-resource-options/image-optimization-paid/image-stack-tools/configure-image-compression-to-webp-and-avif#use-compression-via-query-parameters) |
| The WebP or AVIF format is not supported by the user client         | **Response Header**: `"IMG-SKIP-REASON":"compression: webp/avif format is not supported by the client"`                   | The WebP or AVIF format is not supported by the browser where the webpage is loaded                                                               | Select a browser that supports the required format                                                                                                                                                                |
| The output image size is bigger or equal to the original image size | **Response Header**: `"IMG-SKIP-REASON":"compression: output image size is bigger than/equal to the original image size"` | Image Stack skips compression when the output file size equals or exceeds the original — the original image is returned to prevent size increases | Reduce the `quality` value or change to a format that compresses more efficiently for this image type                                                                                                             |
| Conversion to WebP or AVIF internal error                           | **Response Header**: `"IMG-SKIP-REASON":"compression: {image/webp or image/avif} conversion internal error"`              | Internal conversion error                                                                                                                         | Contact our technical support team at [support@gcore.com](mailto:support@gcore.com)                                                                                                                               |

## Resize operation errors

<Note>The request body is proxied from the origin. The response headers include X-Img-Server and headers from the origin. The status code is 200 OK.</Note>

| **Error**                                                                         | **Details**                                                                                                                           | **Causes**                                                            | **Solutions**                                                                                     |
| --------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| Bad “width” parameter                                                             | **Response Header**: `"IMG-SKIP-REASON":"resizing: bad width parameter"`                                                              | The width parameter is invalid. We cannot parse the value to a number | Set a positive integer                                                                            |
| Bad “height” parameter                                                            | **Response Header**: `"IMG-SKIP-REASON":"resizing: bad height parameter"`                                                             | The height parameter is invalid. We can’t parse value to a number     | Set a positive integer                                                                            |
| The output image width or height parameter is larger than the original image size | **Response Header**: `"IMG-SKIP-REASON":"resizing: destination image width or height parameter is more than the original image size"` | The request attempted to scale the image beyond its original size     | Reduce the `width` and `height` parameter values to be smaller than the original image dimensions |
| Resizing internal error                                                           | **Response Header**: `"IMG-SKIP-REASON":"resizing: internal error"`                                                                   | Internal Image Stack error                                            | Contact our technical support team at [support@gcore.com](mailto:support@gcore.com)               |

## Crop operation errors

<Note>The request body is proxied from the origin. The response headers include X-Img-Server and headers from the origin. The status code is 200 OK.</Note>

| **Error**                                                                                           | **Details**                                                                                                                                                              | **Causes**                                                                                                   | **Solutions**                                                                                                                                                                                       |
| --------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Bad “width-ratio” or “height-ratio” parameter                                                       | **Response Header**: `"IMG-SKIP-REASON":"cropping: bad width-ratio or height-ratio parameter"`                                                                           | The aspect ratio does not contain exactly two colon-separated values                                         | Specify two values (numbers) using the ":" delimiter                                                                                                                                                |
| Bad “height ratio” parameter                                                                        | **Response Header**: `"IMG-SKIP-REASON":"cropping: bad height ratio parameter"`                                                                                          | We can’t parse height value to an integer or value less than 0                                               | Set the “height ratio” as a positive number according to the [guide](/cdn/cdn-resource-options/image-optimization-paid/image-stack-tools/crop-images#crop-an-image-by-customizing-its-aspect-ratio) |
| Bad “width ratio” parameter                                                                         | **Response Header**: `"IMG-SKIP-REASON":"cropping: bad width ratio parameter"`                                                                                           | We can’t parse width value to an integer or value less than 0                                                | Set the “width ratio” as a positive number according to the [guide](/cdn/cdn-resource-options/image-optimization-paid/image-stack-tools/crop-images#crop-an-image-by-customizing-its-aspect-ratio)  |
| x or y parameter is not specified                                                                   | **Response Header**: `"IMG-SKIP-REASON":"cropping: x or y parameter is not specified"`                                                                                   | The x or y parameters specifying the number of pixels to offset do not contain values                        | Specify x and y values                                                                                                                                                                              |
| Bad x or/and y percentage parameter                                                                 | **Response Header**: `"IMG-SKIP-REASON":"cropping: bad x/y percentage parameter"`                                                                                        | The x or y parameters cannot be parsed to an integer or have a value less than 0                             | Set the percentage between 0 and 100 \[0, 100]                                                                                                                                                      |
| Bad x or y pixel parameter                                                                          | **Response Header**: `"IMG-SKIP-REASON":"cropping: bad x/y pixels parameter"`                                                                                            | The x or y pixel parameters cannot be parsed to an integer or have a value less than 0                       | Set a positive integer for x and y                                                                                                                                                                  |
| x and y pixels number parameter and percentage x and y parameter cannot be specified simultaneously | **Response Header**: `"IMG-SKIP-REASON":"cropping: x/y pixel and percentage values cannot be specified simultaneously"`                                                  | The x and y values are specified twice: once in pixels and once as a percentage                              | Use only one method to specify the x and y values                                                                                                                                                   |
| Bad offset value for the x or y parameter                                                           | **Response Header**: `"IMG-SKIP-REASON":"cropping: bad offset-x/y parameter"`                                                                                            | The value of offset for x or y is empty                                                                      | Specify x and y values for offset; it should be larger than 0                                                                                                                                       |
| “width”, “height” and “width-ratio”:”height-ratio” values cannot be specified simultaneously        | **Response Header**: `"IMG-SKIP-REASON":"cropping: width={value},height={value} and width-ratio={value}:height-ratio={value} values cannot be specified simultaneously"` | Pixels size parameters and aspect ratio are specified simultaneously                                         | Use only one method to specify the “width” and “height” or “width-ratio” and “height-ratio”                                                                                                         |
| x and y percentage parameter cannot be more than 100                                                | **Response Header**: `"IMG-SKIP-REASON":"cropping: x/y percentage parameter cannot be more than 100"`                                                                    | The x or y parameter is more than 100%                                                                       | Set the x and y parameters between 0 and 100 \[0, 100]                                                                                                                                              |
| “offset x”, “offset-y” parameters cannot be more than 100                                           | **Response Header**: `"IMG-SKIP-REASON":"cropping: offset-x/y parameter cannot be more than 100"`                                                                        | The "offset-x“ or “offset-y” parameters are more than 100                                                    | Specify the “offset-x” and “offset-y” parameters as less than 100                                                                                                                                   |
| Output “height” and “width” are bigger than the original image size                                 | **Response Header**: `"IMG-SKIP-REASON":"cropping: output height and width cannot be bigger than the original image size"`                                               | The “height” and “width” parameters are more than the width and height of the original image                 | Set the height and width parameters to be less than the original image                                                                                                                              |
| Output x or y pixel value is bigger than the original image value                                   | **Response Header**: `"IMG-SKIP-REASON":"cropping: output x/y pixel value cannot be more than the original image pixels"`                                                | The x or y pixel offset positions the crop area so that it extends beyond the original image boundaries      | Adjust the x or y pixel offset so that the crop area remains within the original image boundaries                                                                                                   |
| Output x or y percentage value cannot be more than the original image size                          | **Response Header**: `"IMG-SKIP-REASON":"cropping: output x/y percentage value cannot be more than the original image size"`                                             | The x or y percentage offset positions the crop area so that it extends beyond the original image boundaries | Adjust the x or y percentage offset so that the crop area remains within the original image boundaries                                                                                              |
| Crop operation internal error                                                                       | **Response Header**: `"IMG-SKIP-REASON":"resizing: fit operation internal error"`                                                                                        | The crop operation failed due to internal reasons                                                            | Contact our technical support team at [support@gcore.com](mailto:support@gcore.com)                                                                                                                 |
