P-Image-Ideogram
P-Image-Ideogram is Pruna AI’s text-to-image model, built in collaboration with Ideogram. It offers four thinking levels that trade off speed, price, and quality: Very Low, Low, Medium, and High.
Use it for photoreal campaigns, product and people-led visuals, precise typography, and structured JSON prompts with hex colors and bounding boxes. Pair Medium for everyday production, Very Low or Low for drafts and high-volume exploration, and High at 2K or above when prompts are detailed or text rendering must be crisp.
At a glance
Metric |
P-Image-Ideogram |
|---|---|
Speed (1K, prompt upsampling on) |
~0.6 s (Very Low) to ~7.5 s (High), depending on |
Price |
~$0.003 (Very Low) to ~$0.03 (High) per image |
Thinking levels |
|
Text rendering |
Strong; use High at 2K+ for difficult typography |
API model header |
|
Thinking modes
Speeds below are measured at 1K with prompt_upsampling: true. Higher thinking values generally work best with more detailed prompts. On vague prompts, High can add unrequested detail. Low is often better for simple, non-specific prompts.
|
Cost |
Speed |
Best for |
|---|---|---|---|
|
~$0.003 |
~1.6 s |
High-volume generation, drafts, exploration, A/B testing |
|
~$0.0075 |
~1.8 s |
Cost-efficient production at scale; simple prompts |
|
~$0.015 |
~2.4 s |
Everyday production: best default balance |
|
~$0.03 |
~3.6 s |
Complex prompts, fine detail, brand-critical assets, difficult text at 2K+ |
Strengths and limits
Strengths |
Details |
|---|---|
Photorealism |
Very strong performance on people, products, and lifestyle scenes |
Text rendering |
Reliable on-image typography when you use |
Flexible prompting |
Natural language and structured JSON; hex colors and bounding boxes supported |
Speed and cost |
Fast and affordable across all thinking levels |
Limits |
Impact |
|---|---|
Creative styles |
Non-photoreal and stylized looks are still improving |
Low-mode artifacts |
|
Text at low thinking |
Difficult text rendering does not work well in |
Mode choice |
Higher thinking is not always better: match the mode to the prompt. |
Feature highlights
Four capabilities that define how to use P-Image-Ideogram in production. Open Show prompt under each example to copy the text.
Four generation levels via thinking: different quality / latency / cost.
Note
Higher modes work best with detailed prompts. On a vague prompt, high can invent unrequested detail. Prefer low or medium for simple exploration.
Street-style editorial
image_size sets the output resolution budget (default "1K"). Use "1K" for faster drafts when typography is not critical. Prefer 2K with high for brand-critical or typography-heavy work.
Beauty shade at thinking: high. Drag to compare typography and skin detail:
Typography is a strength, but difficult text does not work in very_low or low. Use ``high`` at 2K, keep copy short, and use an Exact visible text only: + CRITICAL TYPOGRAPHY: block in the prompt.
Beauty shade campaign
Pass a JSON string as prompt for compositional control: hex colors, bounding boxes, and typed elements (text / obj). Set prompt_upsampling: false when the spec is final.
JSON is worth it when you need exact layout, brand hex colors, or repeatable composition — posters, labels, paid social, slide decks. For quick mood exploration, natural language is usually enough.
P-Image-Ideogram uses the same Ideogram 4.0 structured-caption schema documented in JSON Prompting (Ideogram 4.0). The three top-level fields:
high_level_description— one- or two-sentence summary of the whole image (strongly recommended)style_description— optional aesthetics, lighting, andmedium; usephotoorart_style, not both; optionalcolor_paletteof uppercase#RRGGBBhex codes (up to 16 for the image)compositional_deconstruction— required;backgroundfirst, thenelements[]
Each element is "type": "obj" (a subject or object, with desc) or "type": "text" (literal copy in text plus desc). Optional bbox places an element with normalized coords [y_min, x_min, y_max, x_max] on a 0–1000 grid (origin top-left); omit bbox to let the model place freely. Per-element color_palette accepts up to five hex codes.
Note
Key order matters. The model was trained on captions with a consistent field order — follow the schema in the Ideogram guide rather than reordering keys. See Configuration below for a full API request example.
Lookbook cover with JSON placement for the masthead and collection lines
Domain use cases
Examples from the partner kit, grouped by vertical. Each row shows Very Low, Low, Medium, and High. Open Show prompt to copy the text.
Useful for lookbook moods, street-style editorials, show collateral, and colorway lifestyle strips before a shoot.
Colorway lifestyle strip
Runway invitation
On-model campaign moods, shade storytelling, and social beauty atmospheres. These are creatives, not brand packshot replacements.
Beauty ritual mood
Performance ads, OOH, and UGC-style people shots when you need readable headlines and fast campaign iteration.
OOH billboard
Prefer medium or high at 2K when the typography is large.
Paid social (JSON layout)
Key art, title banners, and pitch moods when you need cinematic stills with clean title typography.
Game key art banner
Delivery heroes, recipe banners, and dining lifestyle shots for campaigns and social.
Delivery lifestyle banner
Recipe banner
Lifestyle and night-drive scenes where the car sits in context with people, not as a sterile packshot.
Weekend coastal lifestyle
Night city route (JSON)
Denser specs hold up better at medium or high.
Destination cards, booking visuals, and family travel heroes for apps and seasonal campaigns.
Itinerary day card
Global travel hero
Room atmospheres and lifestyle staging. Brands still supply their own furniture SKUs; these shots set mood and context.
Marketplace lifestyle staging
Designer concept moodboard
Lesson covers, language-app art, and launch slides with clear on-image typography.
Immersive history lesson
Language learning app
Product launch slide
Magazine openers, posters, and covers where the masthead has to stay sharp. Prefer medium or high at 2K when typography is critical.
Magazine opener
Podcast cover
Series poster
Integration
Endpoint
Base URL: https://api.pruna.ai/v1/predictions
Rate limit: 500 requests per minute
Full API reference: P-Image-Ideogram
Authentication
-H 'apikey: YOUR_API_KEY'
Asynchronous (default)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H 'apikey: YOUR_API_KEY' \
-H 'Model: p-image-ideogram' \
-d '{
"input": {
"prompt": "Vertical beauty campaign visual for a fictional fragrance launch...",
"thinking": "medium",
"image_size": "2K",
"aspect_ratio": "3:4",
"prompt_upsampling": true
}
}'
Synchronous (Try-Sync)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H 'apikey: YOUR_API_KEY' \
-H 'Model: p-image-ideogram' \
-H 'Try-Sync: true' \
-d '{
"input": {
"prompt": "Editorial fashion photograph of a fictional model in Copenhagen rain...",
"thinking": "low"
}
}'
Configuration
Parameters below match the live P-Image-Ideogram API reference and follow the same request shape as p-image.
Required parameters
Parameter |
Type |
Description |
|---|---|---|
prompt |
string |
Short text prompt for image generation. Supports natural language and JSON structured prompts. |
Optional parameters
Parameter |
Type |
Default |
Description |
|---|---|---|---|
thinking |
string |
|
Quality level: |
prompt_upsampling |
boolean |
|
Enhance the prompt before generation. Set |
aspect_ratio |
string |
|
|
image_size |
string |
|
Output resolution budget: |
width |
integer |
|
Custom width (0–2560, multiple of 16). Only when |
height |
integer |
|
Custom height (0–2560, multiple of 16). Only when |
seed |
integer |
random |
Random seed for reproducible generation |
output_format |
string |
|
Output image format |
output_quality |
integer |
|
Output quality 0–100 (ignored for PNG) |
Example: text rendering at High + 2K
{
"input": {
"prompt": "Vertical beauty campaign... Exact visible text only: Product name exactly \"ROUGE ATELIER\"...",
"thinking": "high",
"image_size": "2K",
"aspect_ratio": "3:4",
"prompt_upsampling": true,
"seed": 42
}
}
Example: fast draft at Very Low
{
"input": {
"prompt": "Editorial fashion photograph of a fictional model walking in Copenhagen rain, no logos, no text.",
"thinking": "very_low",
"prompt_upsampling": false
}
}
Example: raw JSON prompt without upsampling
{
"input": {
"prompt": "{\"aspect_ratio\": \"3:4\", \"high_level_description\": \"Luxury fashion lookbook cover...\", \"compositional_deconstruction\": {...}}",
"thinking": "medium",
"prompt_upsampling": false
}
}