Every smart telescope owner eventually runs into the same problem: the stack looks great in the middle and slightly wrong at the edges. One corner is a little brighter. There's a diagonal glow crossing the frame. The sky background isn't a uniform gray — it's a smear from light-pollution orange in one corner to something darker in the other. That smear is a gradient, and it's the single most consistent gap between an app-generated JPEG and a photo that looks like the ones on Astrobin. Fixing it takes about five minutes with a free tool called GraXpert, and it's the second-biggest post-processing win after stacking itself.
Where gradients come from
Gradients aren't your telescope's fault. They come from the world around it. The four usual sources, in rough order of how often they show up on a suburban lawn:
- Light pollution. A sodium-vapor streetlight two houses over lifts one side of your frame more than the other. Even under a Bortle 4 sky, the horizon is measurably brighter than the zenith, and any frame that includes both directions inherits that gradient.
- The Moon. Even a first-quarter Moon 40 degrees away throws a broad gradient across the sky. The nearer to full it is, and the closer to your target it is, the worse it gets.
- Vignetting. Every optical system dims slightly toward the edge of its field. Smart telescopes correct most of this with flat-field calibration built into the app, but the correction isn't perfect and residual vignetting shows up as a soft ring or corner falloff.
- Natural sky brightness. The sky isn't uniformly dark even at Bortle 1. Airglow, zodiacal light, and integrated starlight all contribute a low, uneven background.
You can't shoot these away. You can shoot around some of them (choose targets away from the Moon, wait for the streetlight to burn out, etc.), but for the rest, gradient removal in post-processing is the fix. And the fix has gotten dramatically easier since GraXpert added an AI model that flattens most smart-telescope stacks in a single click.
Install GraXpert once, use it forever
Grab the installer for your platform from graxpert.com or from the project's GitHub releases page. Windows MSI, macOS DMG (separate builds for Apple Silicon and Intel), and Linux zip are all published on every release. First launch downloads the AI model in the background — one-time, about 100 MB, and after that it runs entirely offline.
You do not need PixInsight, Photoshop, or any paid tool to make GraXpert useful. It's a standalone application, not a plug-in. It reads and writes 32-bit FITS, TIFF, and XISF, which means it slots into any smart-telescope processing chain without conversion loss.
The workflow: where GraXpert fits
The sequence that gets the most out of a smart-telescope stack looks like this:
- Capture and stack in the app (Seestar, DWARF, Vaonis Singularity, Unistellar, or Celestron Origin) — or, better, reprocess the saved raw frames in Siril for a cleaner base stack. Our Siril starter guide walks through this if you haven't done it before.
- Export a 32-bit linear TIFF or FITS from Siril, before you've stretched anything. Linear is critical — running GraXpert on already-stretched data bakes the wrong sky background into the fix.
- Open the linear file in GraXpert, run the AI gradient removal, save the result as a new 32-bit TIFF.
- Reopen the cleaned file in Siril for background extraction (a light second pass), color calibration, and stretching.
- Optional: run GraXpert a second time on the stretched result, this time using the denoise AI model to knock down the last of the sensor noise.
If you skip Siril entirely and just want to clean up the app's JPEG, GraXpert will do it — but you're working on 8-bit already-stretched data, so the ceiling is much lower. This is a fine "I want it to look better in five minutes" answer; it's not the version that competes with what other imagers post.
Step by step: one-click AI gradient removal
Open your 32-bit linear TIFF in GraXpert. Set the Stretch preview to 15% Bg, 3 sigmas (or whatever gives you a visible preview — this only affects the preview, not the actual data). Now:
- In the Background Extraction panel, set Interpolation Method to AI. This replaces the older RBF/Splines/Kriging methods that needed you to manually pick sample points across the background. The AI method figures out where the background is on its own.
- Set Smoothing to 1.0 as a starting point. Lower values pull out more variation (and more risk of eating faint nebulosity); higher values preserve more of the frame's tonal variation (and leave more of the gradient behind).
- Click Calculate Background. On a modern laptop this takes 10–30 seconds. The panel then shows you the extracted background model — a smooth version of just the gradient it plans to subtract. Look at it: it should look like a smooth glow or a subtle color wash, not like your target. If you can see the nebula or galaxy in the background model, the smoothing is too low; raise it and recalculate.
- Click Subtract. GraXpert removes the background model from your image. The frame flattens visibly and any color cast neutralizes.
- Save As a new 32-bit TIFF or FITS. Keep the original — you may want to tweak the smoothing and redo it.
That's the whole loop. Once you've done it three times it takes under two minutes per stack.
Manual mode: when the AI misfires
The AI model is trained on typical deep-sky data and works well on nebulae, galaxies, and star fields. It occasionally struggles with large, low-surface-brightness targets that fill most of the frame (parts of the North America Nebula, wide Milky Way mosaics from a wide-lens Dwarf 3) because it can mistake the target itself for background. When that happens, switch Interpolation Method to RBF, drop 20–40 sample points across the image by clicking areas that are clearly sky (not target), and calculate again. It's slower but you retain full control over what counts as "background."
Recommended settings per smart telescope
These are starting points, not gospel — every session's light pollution is different. Load the AI model, set smoothing per the table, and adjust if the extracted background looks like it's eating your target.
| Scope | Typical stack size | Starting smoothing | Notes |
|---|---|---|---|
| Seestar S30 / S30 Pro | 30–120 minutes | 1.0 | Small aperture means gradients dominate quickly under city skies — this is where GraXpert helps most. |
| Seestar S50 | 30–120 minutes | 1.0 | Same profile as the S30 line; smoothing 1.0 handles most suburban gradients cleanly. |
| DwarfLab Dwarf 3 | 30–120 minutes at the tele lens | 1.0–1.2 | On the wide-angle lens, use 1.2–1.5 — wider fields include more real sky variation. |
| DwarfLab Dwarf Mini | 20–60 minutes | 1.0 | Similar behavior to the S30 tier. |
| Vaonis Vespera line | 60–180 minutes | 0.9–1.0 | Vespera's CovalENS mosaics push gradient variation across the wider stitched frame — check the extracted background carefully. |
| Unistellar Odyssey line | 60–120 minutes | 1.0 | Unistellar's app applies more baked-in processing to its export — start from a raw stack if available. |
| Celestron Origin | 60–180 minutes | 1.0 | Same defaults as the Vespera; the larger native FOV benefits from careful preview. |
Common mistakes that ruin the fix
- Running it after stretching. The math assumes a linear image. Once you've stretched, the gradient is no longer linear either, and subtracting a smooth model creates a wrong-colored sky background. Always gradient-remove before stretching.
- Running it on the JPEG. The app's export is 8-bit and already stretched. See above; you can do it, but the result is cosmetic, not real signal recovery.
- Cranking smoothing to 0.1 for a "better" result. Lower smoothing is not better — it's more aggressive. Below about 0.5 on smart-telescope data you start eating real nebulosity and creating dark halos around bright targets.
- Doing it twice at full strength on the same image. One pass on linear data plus one gentle pass in Siril's Background Extraction tool is fine. Two aggressive GraXpert passes flatten everything into a lifeless gray.
- Skipping the preview of the extracted background. This is the single most useful sanity check. If the background model looks like your image, the settings are wrong.
What comes next
Once the gradient is out, the rest of the processing chain matters more, not less — a flat background makes stretching aggressive and color calibration honest. Head to the Siril starter guide for the stretch step, and to the filters explainer if you're still shooting nebulae with the wrong filter on and creating gradients that no post-processing can fully undo. And if you're still deciding which scope to build this workflow around, our smart telescope buying guide walks through the current price tiers.