Skip to content
pdfconversionapi

PPT to WebP API

POST /v2/convert/ppt/to/webp returns a lossless WebP image of every visible slide in a .ppt. Sent with no options, the sample's 4:3 slides come back at 1,500 × 1,125 and weigh 247,552 bytes in total.

Endpoint
POST /v2/convert/ppt/to/webp
Accepts
ppt
Sample timing
0.624 s median of 5 runsHow we measure
Request size
Up to 10 MB on the Free plan or 100 MB on paid plans, all files together

Request and response

Every sample below ran against the API before this page was published. Set PDFCONVERSIONAPI_KEY to your key and run it as is.

curl -sS -X POST \
  https://api.pdfconversionapi.com/v2/convert/ppt/to/webp \
  -H "Authorization: Bearer $PDFCONVERSIONAPI_KEY" \
  -F File=@eastgate-pantry-orientation.ppt \
  -o response.json

# FileData is base64. Save the first file in converted/,
# or print the JSON error.
if jq -e '.Files' response.json > /dev/null; then
  mkdir -p converted
  name=$(jq -r '.Files[0].FileName' response.json)
  jq -r '.Files[0].FileData' response.json \
    | base64 --decode > "converted/$name"
else
  cat response.json
fi
200 OK0.624 s median5 files, 242 KB
{
  "ConversionCost": 1,
  "ConversionTime": 0.624,
  "Files": [
    {
      "FileName": "eastgate-pantry-orientation-1.webp",
      "FileExt": "webp",
      "FileSize": 37066,
      "FileData": "UklGRsKQAABXRUJQVlA4TLWQ…"
    },
    {
      "FileName": "eastgate-pantry-orientation-2.webp",
      "FileExt": "webp",
      "FileSize": 72358,
      "FileData": "UklGRp4aAQBXRUJQVlA4TJIa…"
    },
    {
      "FileName": "eastgate-pantry-orientation-3.webp",
      "FileExt": "webp",
      "FileSize": 44786,
      "FileData": "UklGRuquAABXRUJQVlA4TN6u…"
    },
    … 2 more files
  ]
}

Response from our test run on 2026-11-03. ConversionTime shows the median of 5 runs. FileData is shortened here; the real response carries the whole file as base64.

The sample, converted

The same file the code sends. Download the input and the output and compare them yourself.

First page of eastgate-pantry-orientation-1.webp, rendered by the API
Input
eastgate-pantry-orientation.ppt (80 KB)
Output
eastgate-pantry-orientation-1.webp (36 KB)eastgate-pantry-orientation-2.webp (71 KB)eastgate-pantry-orientation-3.webp (44 KB)eastgate-pantry-orientation-4.webp (58 KB)eastgate-pantry-orientation-5.webp (33 KB)
Source
A six-slide volunteer orientation deck for a fictional food pantry, made by us and saved in the PowerPoint 97-2003 format; slide 5 is hidden and slide 3 has speaker notes. (CC0-1.0). How it was made
Made by
2026-11-04, API build 9eeeb0640aba

Parameters

Send these as form fields next to the file. Names are case-insensitive. If you set one of the documented options below that we don't support yet, the request fails with a 400 that names it instead of returning a file made without it.

ParameterWhat it does
ImageResolutioninteger, default 150Drawing density in pixels per inch. It sets the pixel size only; WebP has nowhere to store a DPI. ConvertAPI documents 200 as its default; sent here, 200 gave 2,000 × 1,500 slides.Values: 36–600
ImageWidthintegerExact width in pixels, the height following the 4:3 slide. Use it rather than ImageResolution when the images go into a fixed-width layout.Values: 1–20000
ImageHeightintegerExact height in pixels, or a box together with ImageWidth.Values: 1–20000
PageRangestringVisible slides to include, numbered from 1 and skipping hidden ones.Values: e.g. 1, 2-4
ConvertHiddenSlidesboolean, default falsetrue adds the slides PowerPoint hides in a show, such as the sample's budget note.
TransparentColorstringClears every pixel of one exact color; WebP stores the transparency.
PasswordstringAccepted, but encrypted decks don't open yet: a password-protected copy of the sample returned 422 "the input file is password-protected" with its password.

Not supported yet

Setting one of these to anything but its default returns 400.

OptionWhat to do instead
ImageQualityOnly lossless WebP is written. A value other than 75 returns 400 "ImageQuality is not supported yet for PPT → WebP".

What carries over, and what doesn't

Kept

  • Exact pixels: the files use WebP's lossless mode, so text, table rules and chart edges match the drawn slide
  • Five images for the five visible slides, numbered by position
  • Sharpness at any size, because the slides are drawn from vector shapes
  • An alpha channel for TransparentColor

Lost or not yet supported

  • Size control by quality. Lossy WebP isn't available, and ImageQuality is refused.
  • The deck's speaker notes; the sample's note on slide 3 is not in any image.
  • Resolution metadata: whatever ImageResolution you choose, the WebP records none.
  • Hidden slides, unless you ask for them.

Limits

  • One .ppt per request, up to 10 MB on the Free plan or 100 MB on paid plans.
  • Up to 2,000 slides drawn, each at most 16,000 pixels per side and 100 million pixels.
  • 120 seconds per conversion; longer jobs end with 504.
  • Password-protected .ppt files: 422 for now, even with Password.

Where teams use it

Putting an old deck archive on the web

Publish the slides of a .ppt collection as images on your site, at less than half the transfer size of PNG and without the blur JPEG adds to text.

Storing slide renders for a search results page

If you keep one image per slide to show next to search hits, lossless WebP holds the same pixels as PNG in less space.

Questions

How much smaller is WebP than PNG for .ppt slides?

For the sample at 150 DPI: 247,552 bytes as WebP, 541,903 as PNG and 550,395 as JPEG at quality 85. The WebP files are lossless, so they are both the smallest and an exact copy of the drawn slide.

Which slide takes the most space?

The shift table, at 72,358 bytes, because of its many letters and cell borders. The title slide with its large flat band needs 37,066 bytes, and the floor-plan slide 33,686.

Can I get lossy WebP for smaller files?

Not on this route yet: ImageQuality returns 400. To shrink files, lower ImageResolution or set ImageWidth, or use /v2/convert/ppt/to/jpg with a quality setting.

What happens with a .pptx sent here?

It is refused with 422 "it could not be opened as PPT", because this route only reads the 97-2003 format. Send it to /v2/convert/pptx/to/webp instead.

Convert your first PPT file in a minute.