Cookie Settings

Essential cookies are always on. Analytics and advertising cookies are optional — you can change your choice at any time.

    Anti-AI

    Make Midjourney, DALL-E and Stable Diffusion Images Undetectable (2026)

    Tim Geithner
    10 min read

    Searching for a way to make Midjourney images undetectable usually means one of two things: the file still carries the generator's fingerprints, or an automated check flags the image. Both are fixable to a point. Neither is fixable permanently, and any guide that says otherwise is selling something.

    This guide is organised by generator, because that is where the useful difference lies. Midjourney, DALL·E and Stable Diffusion leave different traces, and a workflow tuned for one of them is roughly the wrong workflow for the other two.

    What every generator leaves behind

    Four trace classes show up regardless of which model produced the image:

    1. Provenance metadata — C2PA manifests, IPTC/XMP AI markers, or a software tag naming the generator.
    2. Generation parameters — prompt, seed, sampler, model hash, sometimes the whole node graph.
    3. Generator-typical dimensions — the model produced one specific size, and that size is a weak but free signal for anyone checking.
    4. Pixel statistics — noise floor, frequency content, colour correlation and compression history that differ from a camera pipeline.

    The first two you can rewrite directly. The third is a number. The fourth is what a real image-processing pipeline is for.

    Midjourney

    • Dimensions: common exports land on 1024, 1456, 1664, 1728 or 2048 on the long edge — sizes very few cameras output natively.
    • Metadata: the web download writes generator fields; a screenshot of the grid view does not, but a screenshot also costs you resolution and leaves pixel statistics untouched.
    • Image character: upscale passes smooth fine detail, which is exactly the region detectors sample for noise and texture.

    Start from the largest upscale you have, process it once, and let the dimension-break and micro-resampling layers move the file off those signature sizes.

    DALL·E and other OpenAI image outputs

    • Dimensions: 1024×1024, 1024×1792 and 1792×1024 are the signature output sizes.
    • Metadata: PNG exports can carry generation parameters as text chunks; the image looks normal in any viewer, but the fields are readable.
    • Image character: comparatively clean noise floor and very consistent local texture.

    Stable Diffusion, Flux and ComfyUI workflows

    • Dimensions: multiples of 64 — 512, 768, 1024, 1536 and the SDXL defaults are common.
    • Metadata: Automatic1111 and ComfyUI save the full settings, and ComfyUI often saves the complete node graph. This is the most information-rich trace of any common generator and the easiest to remove.
    • Image character: depends entirely on the checkpoint and the samplers, which is why a single "SD recipe" cannot be written — the variation between checkpoints dwarfs the variation between detectors' opinions of them.

    If you work locally, strip the text chunks before you upload the file anywhere. It takes seconds and it removes the single most identifying trace in the whole chain.

    The workflow, generator by generator

    1. Keep the original. Processing rewrites pixel data and cannot be undone.
    2. Strip generation parameters. Metadata fields naming the model, the seed or the prompt are pure giveaway and need no processing at all.
    3. Process once in the Anti-AI Converter — Balanced strength, EXIF injection on. The browser runs the pipeline locally, so the file is not uploaded.
    4. Verify with the AI Image Detector and compare the verdict against the original file, not against zero.
    5. Stop as soon as the result is acceptable. Going one preset higher is rarely worth the visible noise.

    Why the size of the image matters

    A long edge that exactly matches a generator default is a weak signal, but it is free to check, so detectors do check it. The converter shares one list of these sizes between detection and mitigation: 512, 576, 640, 704, 768, 832, 896, 960, 1024, 1080, 1152, 1216, 1280, 1344, 1408, 1456, 1472, 1536, 1664, 1728, 1792, 2048 pixels. The dimension-break layer shifts a converted file off those values, and the detector uses the same list on the other side — so the two never drift apart.

    What usually does not work

    • Screenshots. Removes metadata, keeps the statistics, loses resolution.
    • Re-saving as JPEG and hoping. Adds compression noise, nothing more.
    • One fixed setting for every generator. The traces differ enough that per-image verification beats a per-generator table.
    • Processing twice. Two pipelines stacked usually cost more quality than they shift.

    Use it responsibly

    Cleaning your own files before publishing is ordinary image editing. Using it to strip a legally required disclosure, to impersonate someone, or to pass generated work off as documentary photography is not — those obligations are unaffected by any processing step on this page.

    Tags:
    make midjourney images undetectable
    midjourney undetectable
    stable diffusion undetectable
    dall-e undetectable
    remove ai metadata
    make ai images undetectable
    bypass ai detection
    ai image humanizer

    Process your generator output

    One browser pipeline for metadata, dimensions and pixel statistics, with a detector check built into the loop.

    Ready to give Photoradar a go?

    Analyse your shots and pinpoint locations with AI support. Start for free—no card required.