AI Skincare Photography API — Packaging and Shade Variants

Oct 6, 2026·6 min read

A skincare brand has one clean studio photo of its serum bottle — amber glass, dropper cap, label catching the light — and the holiday lineup calls for a gift-set version with a gold cap, a travel-size variant, and a limited-edition pink label, months before the production line actually runs any of them. Booking a product photographer for every cap color, size, and label variant costs more than most indie skincare brands spend on a single ingredient batch, and a limited-edition run often sells out before a reshoot could even be scheduled. Generating the packaging variants from the one bottle already photographed answers "what does the holiday shelf look like" without a single extra unit filled.

Direct answer: a reference-guided image generation API takes the existing studio bottle or jar photo as input plus a prompt describing the new cap color, label, or size, and returns a new image that holds the bottle's shape and proportions fixed while changing only the described packaging detail — no reshoot per variant, no waiting on a production run.

How Does an API Generate Skincare Packaging Variants From One Studio Photo?

Reference-guided generation anchors the output to the product's fixed geometry — the bottle's shoulder and neck, a jar's lid profile, a tube's cap shape — then renders the described cap color, label, or size change around it. This differs from plain text-to-image generation, which has no source bottle to match and produces a plausible-looking serum bottle rather than the exact shape shipping to the customer, a real risk when a product page photo needs to match what actually arrives in the box.

As of October 2026, GenRelay exposes three image models through one endpoint for this workflow:

Model Best for 1K price 4K price Editing support
Nano Banana Pro Reference-guided cap, label, and size swaps $0.030 $0.042 Yes, strong consistency
Nano Banana 2 Faster batch variants, slightly lower consistency $0.020 $0.036 Yes
GPT-image-2 Instruction-based edits (recolor a cap, swap a label) $0.014/image $0.014/image Yes, instruction-driven

Nano Banana Pro holds bottle shoulder shape and dropper proportions most reliably across a full cap-and-label change, which matters when the gift-set gold cap needs to catch light the same way the original black cap did. GPT-image-2 fits small, targeted edits — recoloring a cap or swapping a label graphic — better than a full packaging restyle.

How Do I Call the API to Generate a Packaging Variant?

Authenticate with a bearer token and send the source photo plus a prompt describing the packaging change. Here's a minimal working request using Nano Banana Pro:

import requests

API_KEY = "YOUR_KEY"
BASE = "https://genrelay.ai/v1"

with open("serum_studio.jpg", "rb") as f:
    r = requests.post(
        f"{BASE}/images/generations",
        headers={"Authorization": f"Bearer {API_KEY}"},
        files={"reference_image": f},
        data={
            "model": "nano-banana-pro",
            "prompt": (
                "Same serum bottle, same shape and dropper cap profile, "
                "cap recolored to matte gold, label swapped to a "
                "holiday gift-set design in cream and gold, studio "
                "lighting unchanged."
            ),
            "resolution": "2k",
        },
    )
job = r.json()
image_url = job["data"][0]["url"]

For a full packaging lineup, batch the same reference image against a list of prompts rather than calling the endpoint one at a time:

import concurrent.futures

variants = [
    "cap recolored to matte gold, holiday gift-set label design",
    "travel-size proportions, same label design, smaller cap",
    "limited-edition pink label, cap unchanged, seasonal foil accent",
]

def generate(prompt):
    with open("serum_studio.jpg", "rb") as f:
        r = requests.post(
            f"{BASE}/images/generations",
            headers={"Authorization": f"Bearer {API_KEY}"},
            files={"reference_image": f},
            data={"model": "nano-banana-pro", "prompt": prompt, "resolution": "2k"},
        )
    return r.json()["data"][0]["url"]

with concurrent.futures.ThreadPoolExecutor(max_workers=3) as pool:
    results = list(pool.map(generate, variants))

Both calls are synchronous — image generation returns a URL directly in the response rather than requiring a polling loop, unlike video generation jobs.

What Does a Full Packaging Launch Cost?

Cost scales with resolution and image count, not with how different each variant looks from the studio original. A skincare brand launching 3 packaging variants from one bottle photo — 3 images — at Nano Banana Pro's 2K price of $0.030 per image costs $0.09 for the full set. Running the same 3 images at 4K for print catalog use costs $0.126 at $0.042 per image. A brand generating a seasonal cap-and-label variant across 6 SKUs — 6 images — costs $0.18 at 2K.

Scope Images Model/resolution Total cost
Single bottle, 3 packaging variants 3 Nano Banana Pro, 2K $0.09
Same set, print-quality catalog 3 Nano Banana Pro, 4K $0.126
6 SKUs × seasonal cap/label variant 6 Nano Banana Pro, 2K $0.18
6 SKUs, instruction-only cap recolor 6 GPT-image-2 $0.084

At this price point, generating a full seasonal packaging lineup costs less than the shipping label for a single sample unit, which is why most skincare brands generate the packaging variants first and reserve an actual production run for the versions that sell well enough to justify a filling line change.

How Do I Keep the Bottle Recognizable Across Variants?

Keep every prompt change scoped to the cap color, label, size, or background — never the bottle's shoulder shape, dropper length, or jar silhouette — since those are exactly the elements reference-guided generation is designed to hold fixed. If a variant starts drifting (the bottle gets taller, the cap shape changes), the fix is almost always a prompt that's too aggressive about "reimagining" the product rather than repackaging it; rephrase toward "same bottle, same shape and proportions, change only the cap, label, and surface finish."

FAQ

Does the API support video, not just photos, for skincare product showcases?
Yes — GenRelay's video models (Veo 3.1 Lite, Grok Imagine) can turn a still bottle or jar photo into a short drop, swirl, or steam clip. See the skincare and spa video API guide for pricing and code.

Can I edit a specific detail instead of restyling the whole bottle?
Yes — GPT-image-2 handles instruction-based edits like "recolor the cap" or "swap the label" at $0.014 per image, cheaper than a full Nano Banana Pro restyle when the change is small.

Will the generated bottle pass as the real product to a customer comparing it to the one they receive?
It should match the real shape and proportions closely enough for marketing use, but disclose AI-generated marketing images per your local advertising rules — this is a legal, not technical, requirement.

What image formats does the API accept as a reference?
JPEG and PNG, up to 10MB. Larger source files should be downsized before upload; resolution of the output is controlled by the resolution parameter, not the input file size.

Is there a rate limit on reference-guided generation calls?
Yes, scoped per API key — check response headers for your current limit, and use a thread pool with a small max_workers count (3–5) for batch jobs rather than firing all requests simultaneously.


Explore the Nano Banana Pro model page for full parameter docs, or read the visual consistency guide for more on reference-guided generation across a product line.

Related posts

Join our DiscordAI Skincare Photography API — Packaging and Shade Variants — GenRelay