We Tested the Topaz Labs API on 5 Real Photos: What 6 Credits Actually Buy You

Key Takeaways
We Tested the Topaz Labs API on 5 Real Photos: What 6 Credits Actually Buy You
  • The Topaz Labs API exposes the company’s denoising, sharpening, upscaling, face recovery, and lighting models over simple REST endpoints: submit a photo, poll a status URL, download the result.
  • Pricing is per output megapixel, and it is cheap: every one of the five test edits (up to a 4,000px upscale) cost exactly 1 credit and finished in 6 to 26 seconds.
  • Standouts: face recovery rebuilt a sharp portrait from a 0.3-megapixel file, and Gigapixel turned a mushy 1,000px crop into a crisp 4,000px architectural shot.
  • The honest caveats: Denoise Max erased faint stars along with the noise on an ISO 25600 astro shot, and the exposure model is conservative. Match the model to the job.

Topaz Labs sells desktop apps, but its real product has always been the models inside them. The Topaz Labs API exposes those same models directly: denoising, sharpening, upscaling, face recovery, and lighting correction, all over plain REST calls with per-photo pricing and no subscription.

With Adobe’s acquisition of the company announced last week and closing later this year, this is a good moment to see exactly what the independent Topaz stack can do. So PhotoWorkout put real credits behind the question: five different models, five real photos from the SampleShots library, and a running tally of what each edit cost.

The short version: the whole experiment cost 6 credits and about 90 seconds of total processing time, and two of the five results are genuinely hard to believe.

When you buy through links on our site, we may earn a commission at no cost to you. We evaluate products independently. Commissions do not affect our evaluations.

How the API Works (and What It Costs)

Every Topaz image endpoint follows the same three-step pattern. You POST a photo with a model name, get back a process_id, poll a status endpoint until the job reports Completed, then hit the download endpoint for a signed result URL. Jobs in these tests finished in 6 to 26 seconds each.

Infographic: the Topaz API three-step workflow (submit, poll, download), the five models tested, and the one credit per photo cost
The whole API in one picture: submit, poll, download. Every model tested for this article cost exactly 1 credit per photo. Illustration by PhotoWorkout.

The minimal Python client is about twenty lines:

import os, time, requests

API = "https://api.topazlabs.com/image/v1"
HEADERS = {"X-API-KEY": os.environ["TOPAZ_API_KEY"]}

with open("photo.jpg", "rb") as f:
    r = requests.post(API + "/denoise-gen/async",
        headers=HEADERS,
        data={"model": "Denoise Max", "output_format": "jpeg"},
        files={"image": f})
pid = r.json()["process_id"]

while True:
    time.sleep(5)
    status = requests.get(API + "/status/" + pid, headers=HEADERS).json()["status"]
    if status == "Completed":
        break

url = requests.get(API + "/download/" + pid, headers=HEADERS).json()["url"]
open("result.jpg", "wb").write(requests.get(url).content)

Billing is per output megapixel, not per call. Precision models (Gigapixel, Denoise, GAN Sharpen, the lighting and cleanup utilities) give you 24 megapixels of output per credit; generative models are pricier per pixel, at 4 megapixels per credit for the Wonder family. In practice that means a typical web-resolution edit costs a single credit. There is also a balance endpoint (GET /account/v1/credits/balance), which made the accounting for this article easy: it started at 144 and ended at 138.

One warning from the trenches: a few model pages in the docs are out of sync with the API itself. The Face Recovery page points at a restoration endpoint that only accepts the Dust-Scratch models. When a model name bounces with an error, trust the OpenAPI schema in the reference section over the model page, or reach face recovery the way this test did, through the face_enhancement parameters on the upscaling endpoints.

Test 1: Denoise Max vs an ISO 25600 Milky Way

The opener is the hardest case in the set: Ryan Hutton’s Milky Way over evergreen silhouettes, shot at ISO 25600 with an 8-second exposure. At that sensitivity the sky is a storm of luminance noise. One call to denoise-gen with Denoise Max, no manual parameters, 15 seconds.

Before and after of an ISO 25600 Milky Way photo processed with Topaz Denoise Max via the API
Denoise Max on autopilot: the ISO 25600 grain is gone and the Milky Way core survives. Shot at ISO 25600, 8s by Ryan Hutton via Unsplash, curated on SampleShots.

The full frame looks like a win, and mostly it is. The grain is simply gone, the Milky Way core keeps its structure, and the tree silhouettes stay clean. But zoom into the star field and the tradeoff appears:

Zoomed detail of the denoised night sky showing faint stars removed along with the noise
The catch, at 100 percent: thousands of faint stars were classified as noise and smoothed away. For astrophotography, dial the strength down instead of trusting autopilot.

Denoise Max cannot tell a dim star from a noise speckle, and on autopilot it chooses cleanliness. Thousands of faint stars vanish along with the grain. For portraits, events, and wildlife this behavior is exactly right. For astrophotography, pass a lower strength value, or this becomes a very effective star remover. Where this sits against Lightroom and Capture One is covered in PhotoWorkout’s three-way denoise comparison.

Test 2: Sharpen Wildlife on a Songbird at ISO 12800

Ray Hennessy’s blue-gray gnatcatcher among cherry blossoms was shot at 500mm, 1/500s, ISO 12800: a classic wildlife compromise where the light forced sensitivity up and fine feather detail suffered. The Sharpen endpoint has a dedicated Wildlife model tuned for fur and feathers.

Before and after of a songbird photo sharpened with the Topaz Wildlife model showing recovered feather detail
The Wildlife model recovers feather texture, eye detail, and bark grain while leaving the blossom bokeh untouched. Shot at 500mm, f/4, 1/500, ISO 12800 by Ray Hennessy via Unsplash, curated on SampleShots.

This was the cleanest win of the five. Feather texture on the breast and wing, the catchlight in the eye, even the lichen on the branch all come back, and critically, the soft pink background stays soft. A generic sharpener would have crunched the bokeh into texture. 26 seconds, 1 credit, and the subject-aware restraint is what separates it from a Photoshop unsharp mask.

Test 3: Gigapixel, 1,000px In, 4,000px Out

For upscaling, the test needed a ground truth. So this one started from Sean Pollock’s 6,000px architectural shot, downscaled to a deliberately mushy 1,000px web thumbnail, then sent through Gigapixel Standard V2 asking for 4x. That way the output can be judged against what the scene actually looks like at high resolution, not against imagination.

Zoomed detail of a skyscraper photo upscaled 4x with Topaz Gigapixel Standard V2 showing recovered window grids
Left: the 1,000px input, naively enlarged. Right: Gigapixel’s 4x output. The window grids resolve back into clean lines in 6 seconds. Photo by Sean Pollock via Unsplash, curated on SampleShots.

At web size the before and after look identical, which is itself the point: Gigapixel does not restyle the image. At 100 percent, mullions and window grids that had dissolved into mush resolve back into clean geometry. Compared with the original 6,000px file, the reconstruction is honest; it slightly regularizes the repeating window pattern in a way a pixel-peeper would catch, but nothing is invented wholesale. This was also the fastest job of the set at 6 seconds. For the wider field of upscaling tools, see the photo enlargement software roundup.

Test 4: Face Recovery From a 0.3-Megapixel File

This is the use case every family archivist cares about: a portrait that only survives as a tiny file. Aiony Haust’s studio portrait was downscaled to 400px wide (0.2 megapixels, roughly an old forum avatar) and sent to the generative upscaler with face_enhancement enabled and creativity kept low.

Before and after of a 400px portrait recovered to 1600px with Topaz Recovery V2 and face enhancement
From a 400px file to a sharp 1,600px portrait in 10 seconds: eyelashes, skin texture, and the sweater’s fabric weave are all regenerated. Photo by Aiony Haust via Unsplash, curated on SampleShots.

The result is the most startling of the five. Eyes, eyelashes, lip texture, and the knit pattern of the sweater are all rebuilt, and a side-by-side against the real full-resolution original shows the recovered face staying faithful to the person rather than drifting toward a generic AI face. That fidelity is the whole game with generative face tools, and it is why the face_enhancement_creativity parameter matters: at low values the model restores, at high values it starts to imagine. Keep it low for real people.

Test 5: Adjust Lighting on a Night Cityscape

The final test gave the exposure model a hard, stylized subject: Pawel Nolbert’s neon-soaked Tokyo aerial, full of crushed shadows and blown highlights by design. Adjust V2 runs on the lighting endpoint, again fully on autopilot.

Before and after of a Tokyo night cityscape processed with Topaz Adjust Lighting 2
Adjust V2 lifts the crushed shadows (watch the dark park and lower streets) without flattening the neon. Subtle, and that restraint is deliberate. Photo by Pawel Nolbert via Unsplash, curated on SampleShots.

The change is real but conservative: shadow districts and the dark park gain visible detail while the neon keeps its punch. On an image this deliberately graded, subtle is the correct answer, and it suggests the model is safe to run in an automated pipeline without producing HDR soup. If you want drama, this is not the model for it; if you want a batch of underexposed event photos quietly fixed, it is.

The Scorecard, and Who This Is Actually For

TestModelTimeCreditsVerdict
ISO 25600 astro denoiseDenoise Max15s1Great, but eats faint stars on autopilot
Songbird sharpeningSharpen: Wildlife26s1Cleanest win: subject-aware, bokeh untouched
4x architectural upscaleGigapixel Standard V26s1Faithful to ground truth, minor pattern smoothing
0.3MP face recoveryRecovery V2 + face enhancement10s1The showstopper: identity preserved
Night cityscape exposureAdjust V216s1Deliberately subtle, pipeline-safe
Five models, five photos, 5 credits of processing (6 spent including one retry). All jobs ran on default autopilot settings.

Who should care? Three groups. Photographers with a backlog problem: culling-adjacent batch work like denoising a whole event shoot stops being an overnight desktop job and becomes a script. Developers: photo products can bolt on professional-grade enhancement without training anything. And archives or studios sitting on low-resolution history: the face recovery result above is one credit per photo.

The context that makes this more than a tech demo: these are the exact models Adobe is buying, and the API’s pay-per-photo model (no subscription, credits never expire) is precisely the kind of pricing that tends not to survive acquisitions. The desktop apps are reviewed in depth in the Topaz Photo Pro review; if you want to try the API while it is still priced like this, Topaz’s API page has the details and a credit calculator.

Vertical before and after comparison of a songbird photo sharpened with Topaz AI via the API
The Wildlife sharpen result, up close: feather and eye detail recovered from an ISO 12800 file, background bokeh preserved. Photo by Ray Hennessy via Unsplash.

Frequently Asked Questions

How much does the Topaz Labs API cost?

You buy credits and spend them per output megapixel. Precision models (Gigapixel, Denoise, GAN sharpening, lighting) yield 24 megapixels of output per credit; generative Wonder-family models yield 4. Every edit in this test, including a 4,000px upscale, cost exactly 1 credit. Credits do not expire and there is no subscription.

Are the API results different from the Topaz desktop apps?

Same model families, different packaging. The desktop apps add previews, local processing, and manual masking; the API gives you autopilot parameter selection plus optional overrides on every call. For batch work the API is dramatically faster than driving a desktop app, and you pay per photo instead of per license.

Is Denoise Max safe for astrophotography?

Not on default settings. In this test it removed faint stars along with the ISO 25600 noise, because a dim star and a noise speckle look identical to the model. Pass a lower strength value, or denoise astro frames with a dedicated astro workflow and save Denoise Max for subjects where smoothness wins.

Will the API survive the Adobe acquisition?

Nobody outside Adobe knows. Adobe has said Topaz products continue as standalone offerings and the models will fold into Firefly Services, which is Adobe’s own API surface. The deal closes in the second half of 2026; existing credits and the current pay-per-use pricing are the parts most worth watching.

The Bottom Line

Six credits bought five professional-grade edits, a couple of genuine surprises, and one honest caveat. The face recovery and wildlife sharpening results justify the API on their own; the astro test is the reminder that autopilot has opinions and you should know them before pointing it at your archive.

As a piece of infrastructure, this is the most photographer-friendly pricing model in the AI editing market right now: no subscription, no expiring credits, one coin per photo. Enjoy it while it is still independent.

Written by

Andreas De Rosi

Andreas De Rosi is the founder and editor of PhotoWorkout.com and an active photographer with over 20 years of experience shooting digital and film. He currently uses the Fujifilm X-S20 and DJI Mini 3 drone for real-world photography projects and personally reviews gear recommendations published on PhotoWorkout.