> ## Documentation Index
> Fetch the complete documentation index at: https://docs.glif.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Image Generation

Glif makes the static assets a marketing team needs: ads, product photography, social carousels, banners, thumbnails and email headers. Describe what you need, add your product and brand files, and Glif produces a full set, in your brand style and sized for each placement.

## What you can make

| Asset | Examples |
| - | - |
| Static ads | Feed, Stories and display ads with headline, product and CTA |
| Product photography | White background, studio, lifestyle, flat lay, on-model, lookbooks |
| Social carousels | 5-slide Instagram carousels from your logo, photos and key messages |
| Thumbnails and banners | YouTube thumbnails, web banners, email headers |
| Variations for testing | Different backgrounds, angles, headlines, colorways or audiences |
| Edits | Remove objects, swap backgrounds, recolor, add or change text, upscale |

## Write a campaign brief

Good briefs get usable assets on the first round. Include:

* **Product:** upload photos, paste a product page link or describe it
* **Audience and goal:** who it's for and what you want them to do
* **Channels and formats:** for example Meta feed 4:5, Stories 9:16, display 1.91:1
* **Brand:** say "use our brand kit," choose a [Style](https://docs.glif.app/styles.md), or attach guidelines
* **Copy:** exact headline and CTA in quotes, or ask for options
* **Quantity:** how many concepts and variations

**Example:** "Three static ad concepts for our Tensai smart watch aimed at weekend climbers. For each, make 4:5 and 9:16 versions. Lifestyle setting outdoors, golden hour. Headline options: 'Built for the summit' and 'Every pitch, tracked.' Use our brand kit."

## Keep every asset on brand

* **Brand kit in memory:** save your colors, fonts, tone and rules once. See [Agent Memory](https://docs.glif.app/agent-memory.md).
* **Styles:** apply one Style to a whole campaign for a consistent look. See [Styles](https://docs.glif.app/styles.md).
* **Your real logo:** upload your logo file as a reference rather than describing it, and check it closely in every output. AI models can distort logos.
* **Product accuracy:** upload clean product photos as references so packaging, colors and details stay as close to the real thing as possible.
* **One chat per campaign:** keep a campaign's work together so new assets match earlier ones.

## Resize for every placement

Finish one ad, then have Glif adapt it to other placements instead of generating each from scratch. The built-in **Ad Resizer** skill turns one ad into five formats: 9:16, 4:5, 16:9, 1:1 and 1.91:1. Type `/` in a chat to use it.

## Make carousels

The built-in **Instagram Slideshows** skill turns your logo, product photos and key messages into an on-brand 5-slide carousel. Keep each key message under 200 characters.

## Produce variations for testing

Ask for variations in one message so they stay consistent with each other: "Make 6 versions of this ad: 3 backgrounds × 2 headlines." Glif can also write matching headlines, primary text and CTAs for each platform.

## Product photography at scale

Upload a product photo on a plain background and ask for the scenes you need: white background for marketplaces, lifestyle shots for ads, flat lays for social. For a whole catalog, see [Skills](../glif-agent/skills.md) to save the recipe, or use the [Glif API](../mcp-and-api/glif-api.md) to run it for many products.

## Edit and iterate

Ask for changes in the same chat. Say exactly what should change and what must stay the same: "Swap the background to a beach at sunset. Keep the product, logo, headline and layout identical."

## How long it takes

Most images are ready in under 30 seconds. Sets of many images take longer.

## Choose a model

Glif chooses for you. You can name one in your prompt or ask Glif to remember a preferred model for a task. See [Supported Models](https://docs.glif.app/supported-models.md).

## More on glif.app

**Workflows**

* [Brand Kit to Assets](https://glif.app/chat/cards/brand-kit-to-assets--lk4EABpZ)
* [Brand Carousel Generator](https://glif.app/chat/cards/brand-carousel-generator--1LE2er4s)
* [Instant Social Media Resizer](https://glif.app/chat/cards/instant-social-media-resizer--fXcejJXL)
* [Product Photo Studio](https://glif.app/chat/cards/product-photo-studio-ai-photography--jyVwcuh2)
* [Create Product Lookbooks](https://glif.app/chat/cards/create-product-lookbooks--fbuG3c9T)
* [Product Placements](https://glif.app/chat/cards/product-placements--Xo7vf3jG)
* [Multi-Angle Product Shot](https://glif.app/chat/cards/multi-angle-product-shot--a1b2c3d4-1003-4aaa-b003-ugcstylead003)
* [Remove Image Backgrounds](https://glif.app/chat/cards/remove-image-backgrounds--a1b2c3d4-1012-4aaa-b012-removebgimg012)

**Use cases**

* [AI Ad Creative Generator](https://glif.app/use-cases/ai-ad-creative)
* [AI Product Photography](https://glif.app/use-cases/ai-product-photography)
* [AI Image Generator](https://glif.app/use-cases/image-generator)
* [AI Image Editor](https://glif.app/use-cases/ai-image-editor)
* [YouTube Thumbnails](https://glif.app/use-cases/youtube-thumbnails)
* [AI Infographic Generator](https://glif.app/use-cases/infographic-maker)
* [For e-commerce](https://glif.app/use-cases/for-ecommerce)

***

## Agent Reference

### Request patterns

| Goal | Pattern |
| - | - |
| Campaign set | One `compose_project` call listing concepts, formats, copy and quantity |
| Resize to placements | Same `project_id` (or `asset_ids` of the approved ad) + "resize to 9:16, 4:5, 16:9, 1:1, 1.91:1" |
| Use the brand kit | Rely on user memory; or name the user's brand skill in the prompt |
| Product reference | `asset_ids: ["img_..."]`, or a product page URL in the prompt |
| Logo | Pass the logo file in `asset_ids`; tell the user to check logo fidelity in outputs |
| Edit earlier output | Same `project_id` + a prompt stating what changes and what stays |
| Catalog of products | One project per product, or the user's product skill per item |

### Examples

Campaign set:

```json theme={null}
{
  "name": "compose_project",
  "arguments": {
    "prompt": "Use our brand kit. Three static ad concepts for this smart watch aimed at weekend climbers, each in 4:5 and 9:16. Outdoor lifestyle, golden hour. Headlines: 'Built for the summit', 'Every pitch, tracked.' Use the attached logo, bottom right.",
    "asset_ids": ["img_PRODUCTXXXXXXXXXXXXXX", "img_LOGOXXXXXXXXXXXXXXXXX"],
    "intelligence": "smart"
  }
}
```

Resize an approved ad:

```json theme={null}
{
  "name": "compose_project",
  "arguments": {
    "project_id": "<projectId>",
    "prompt": "Resize the approved ad to 9:16, 4:5, 16:9, 1:1 and 1.91:1. Keep copy, logo and product unchanged; extend the background as needed."
  }
}
```

### Standard placement sizes

| Ratio | Typical placements |
| - | - |
| 9:16 | Stories, Reels, TikTok |
| 4:5 | Instagram and Facebook feed |
| 1:1 | Feed, marketplaces |
| 16:9 | YouTube, web, presentations |
| 1.91:1 | Link ads, display, LinkedIn |

### Limits

| Item | Limit |
| - | - |
| `asset_ids` per call | 20 |
| `attachments` per call | 20 |
| Instagram Slideshows key messages | 200 characters each |
| Nano Banana Pro references | Up to 14 images; output up to 4K |
| Krea 2 style references | Up to 10 |
| Phota identity references | Up to 10 |
| P-Image Upscale output | Up to 128 MP |

### Notes

* Confirm counts and formats before calling: assets × formats × variations multiplies cost.
* Sending an edit without `project_id` starts a blank project.
* Completed results list files in `structuredContent.media` (`assetId`, URL, title, kind). Share URLs as plain links.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.