Concepts
Billing
What each request costs, what is never billed, how plans and pay as you go work, and worked examples.
Meters and prices
A request is billed when it succeeds and returns a file that is not your original. The price depends on the kind of file. Prices are in US dollars.
| Meter | Applies to | Unit | Price per unit |
|---|---|---|---|
| Images | Compressing or converting an image. See also "What counts as one image". | One file | $0.010 for the first 10,000 in a month, then $0.0022 |
| PDFs | Compressing a PDF | Each started 100 pages | $0.04 |
| Documents | Converting a Word document, spreadsheet or presentation | One file | $0.04 |
| Audio | Compressing or converting audio | Each started minute | $0.005 |
| Video | Compressing or converting video | One video unit | $0.0025 |
| Files | Converting a font or a table | One file | $0.005 |
- Started means rounded up. A PDF of 101 pages is two units. Audio of 61 seconds is two minutes. The minimum is one unit.
- The image tiers count every unit on the images meter, across all keys of the account, in one month.
- The price does not depend on the size of the file in bytes, or on the options you choose, except for video.
Video units
A video is billed in units. The number of units is the started minutes of the video, times a weight for its resolution, times 1.5 if the output codec is H.265 or VP9.
| Shorter side of the output | Units per minute, H.264 | Price per minute, H.264 | Units per minute, H.265 or VP9 | Price per minute, H.265 or VP9 |
|---|---|---|---|---|
| Up to 720 pixels | 8 | $0.02 | 12 | $0.03 |
| Up to 1080 pixels | 14 | $0.035 | 21 | $0.0525 |
| Above 1080 pixels | 28 | $0.07 | 42 | $0.105 |
- The resolution is the shorter side of the frame, so a portrait video of 1080 by 1920 counts as 1080.
- On a compress request it is the resolution of the output. Lowering
video.resolutioncan lower the price. - The default codec for compress is H.265. WebM output is always VP9. A convert request writes H.264, or VP9 for WebM.
What is never billed
- Failed requests. Any response with an error, and any job that ends as
failedorcanceled. - Kept-original results. When a compress request cannot make the file smaller and returns your input, with
kept_original: true. See Kept original. - Test-mode requests. Everything done with a key starting
smol_test_. - Requests that process nothing. Creating an upload, sending its content, reading or listing jobs, downloading a result, fetching a receipt, asking for an estimate, reading usage, and managing presets and webhook endpoints.
A result with increased: true is billed. You asked for a conversion or a resize, and it was made, even though the file grew.
What counts as one image
Three things are billed on the images meter although the input is not always an image:
| Request | Billed as |
|---|---|
| A PDF page rendered to PNG or JPEG with convert | One image, whatever the number of pages in the PDF |
| An image converted to PDF | One image |
| Metadata removed from an image or a PDF with strip metadata | One image, whatever the number of pages |
Plans
Every plan is a monthly fee that comes back as usage: the fee pays for at least its own amount of usage, counted at the prices above. A larger plan includes more usage than it costs and raises your limits.
| Plan | Monthly fee | Usage included each month |
|---|---|---|
| Pay as you go | $20 | $20 |
| Starter | $49 | $55 |
| Growth | $199 | $240 |
| Scale | $799 | $1,040 |
- Included usage is applied to the usage of the month it was paid for. What is left over does not carry forward.
- Usage beyond the included amount is billed at the same unit prices.
- You choose and change plans in the dashboard.
Pay as you go
- Pay as you go is the smallest plan. It costs $20 a month, charged when you start and then every month.
- All of the $20 counts towards your usage for that month. Like every plan's included usage, what is left over does not carry forward.
- Usage beyond the $20 is charged once a month at the unit prices. If that unbilled usage reaches $25 before the month ends, it is charged at that point.
Spend cap
Every account has a monthly spend cap. When the value of the month's usage reaches it, live requests are refused with spend_cap_reached until you raise the cap or the month ends. The default is $100 on pay as you go. See Limits for the defaults on each plan and the exact behaviour.
We email the account's address when the month's usage passes 50%, 80% and 100% of the cap, once for each. If a single large charge passes several at once, you get one email, for the highest.
Emails about your account
These are the only emails the API sends. They are plain text and go to the address you sign in with.
- A plan became active, a payment failed, or a plan ended.
- Usage passed 50%, 80% or 100% of the spend cap.
- A live API key was created. The email shows the key's first and last characters, never the key.
- The account was suspended because a payment was disputed.
Worked examples
500 photos, 20 of them already small
You compress 500 JPEGs. 480 come back smaller. 20 could not be made smaller and come back with kept_original: true.
480 images × $0.010 = $4.80
20 kept original = $0.00
total = $4.8025,000 images in one month
first 10,000 images × $0.010 = $100.00
next 15,000 images × $0.0022 = $ 33.00
total = $133.00This is more than the default spend cap on pay as you go, which is $100. On that plan, raise the cap in the dashboard before a month like this one.
A 250-page PDF
compress: 250 pages = 3 started hundreds × $0.04 = $0.12
render page 3 to PNG: 1 image × $0.010 = $0.01
strip metadata: 1 image × $0.010 = $0.01A podcast episode of 3 minutes 20 seconds
4 started minutes × $0.005 = $0.02A video of 2 minutes 30 seconds, output at 1920 by 1080
H.265: 3 started minutes × 14 × 1.5 = 63 units × $0.0025 = $0.1575
H.264: 3 started minutes × 14 = 42 units × $0.0025 = $0.1050A month on the Starter plan
The plan costs $49 and includes $55 of usage.
3,000 images × $0.010 = $30.00
400 PDFs under 100 pages × $0.04 = $16.00
100 minutes of audio × $0.005 = $ 0.50
usage = $46.50 (within the $55 included)
invoice = $49.00usage = $70.00
included = $55.00
usage beyond the plan = $15.00
invoice = $49.00 + $15.00 = $64.00A month on pay as you go
monthly fee, counted towards usage = $20.00
usage = $28.40
covered by the fee = $20.00
usage beyond the plan = $ 8.40
total for the month = $28.40monthly fee = $20.00
usage = $ 6.00 (within the $20 included)
total for the month = $20.00Checking what was billed
- A direct request returns
Smol-Billed: trueorfalse. - A job has a
billedfield. It is set when the job finishes. - GET /v1/usage returns usage per meter and per day. The dashboard shows the same figures, and your invoices.
- POST /v1/estimate gives the price of a request before you send the file.