ComfyUI Node

Ideogram 2.0

The text-on-image specialist, parked inside your graph

By Runware·Created 2 years ago·Updated about a month ago· 140
Ideogram 2.0
  • advancedFeatures.watermark.image
  • providerSettings.ideogram.styleReferenceImages
  • image
positivePrompt
negativePrompt
size1K (1:1)
numberResults1
advancedFeaturesfalse
advancedFeatures.watermark.bgColor
advancedFeatures.watermark.displayPosition(default)
advancedFeatures.watermark.fontColor
advancedFeatures.watermark.opacityfalse
advancedFeatures.watermark.opacity_value0.10
advancedFeatures.watermark.text
providerSettings.ideogram.magicPromptAUTO
providerSettings.ideogram.colorPalette.name(default)
providerSettings.ideogram.renderingSpeedDEFAULT
safetyfalse
safety.checkContentfalse
providerSettings.ideogram.styleTypeAUTO
ttlfalse
ttl_value60
outputFormatJPG
outputQuality95
advanced_json

Ideogram's whole identity is typography. While most image models melt lettering into alphabet soup, Ideogram renders words, logos, and signage that actually reads - which is why it's the go-to for posters, product shots with labels, and anything where the text in the image is the point. This node is Ideogram 2.0 running on Runware's cloud, so you get that text-fidelity without a local install and without the Ideogram website.

The reason you'd pick this over a FLUX or Z-Image node isn't raw photorealism - it's the text and the design orientation. Ideogram is the model you reach for when "the sign says OPEN" needs to say OPEN. Pair that with the design features below and it starts to behave like a small design tool rather than just another image generator.

Inputs that matter

positivePrompt, width, height required (1024×1024 default). Then the Ideogram-specific set:

  • providerSettings.ideogram.styleType - the big one: AUTO, GENERAL, REALISTIC, DESIGN, RENDER_3D, ANIME, FICTION. DESIGN is where Ideogram earns its keep - it's the mode for graphics, posters, and composed layouts. REALISTIC for photos. Start here before you touch the prompt.
  • providerSettings.ideogram.magicPrompt - AUTO (default), ON, or OFF. Automatic prompt enhancement. AUTO is usually a win on short prompts; OFF when you want to control every word, because the enhancer will happily rewrite your carefully crafted typography request.
  • providerSettings.ideogram.renderingSpeed - TURBO, DEFAULT, QUALITY. The speed/quality trade. Draft on TURBO, finish on QUALITY.
  • providerSettings.ideogram.styleReferenceImages - an IMAGE socket for style reference. This is Ideogram's version of "make it look like this," useful for locking a poster style or brand look.
  • providerSettings.ideogram.colorPalette.name - preset palettes: EMBER, FRESH, JUNGLE, MAGIC, MELON, MOSAIC, PASTEL, ULTRAMARINE. Cohesive color grading with one dropdown. The advanced_json field exists specifically to extend this with custom palette members if the presets aren't enough.

negativePrompt, numberResults (up to 20), outputFormat, and outputQuality are the standard tail.

How it works

The node sends ideogram:3@1 as an imageInference task through the Runware SDK with providerSettings.ideogram.* embedded in the request. The finished image returns as a native IMAGE. Cloud-only, pay-per-run, cost on the title bar.

Install and gotchas

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

Restart; API key via Settings → "Runware API key", RUNWARE_API_KEY, or runware auth login.

The classic trip-ups: people skip styleType and wonder why their "poster" looks like a generic photo - DESIGN mode is most of the value. And they leave magicPrompt on AUTO while demanding exact text, then the enhancer mangles the phrasing and the text comes back wrong; set it to OFF for anything typography-critical. Also note this is the 2.0 generation model on a hosted API - there's no local weights file, no offline mode, and no fallback when the API's down. If you need guaranteed-render text today and you have the GPU, the local model does this too; this node is the no-GPU and no-website path.

CategoryRunware/Image/ideogram

Inputs (24)

NameTypeDefaultDescription
positivePromptSTRINGText prompt describing elements to include in the generated output.
advancedFeatures.watermark.imageoptIMAGE
providerSettings.ideogram.styleReferenceImagesoptIMAGE
negativePromptoptSTRINGPrompt to guide what to exclude from generation. Ignored when guidance is disabled (CFGScale ≤ 1).
sizeoptCOMBO1K (1:1)Output size. Only one of resolution or dimensions is sent.
numberResultsoptINT11–20Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
advancedFeaturesoptBOOLEANfalseEnable to set advancedFeatures. Off uses the model's default.
advancedFeatures.watermark.bgColoroptSTRINGBackground color in hex format.
advancedFeatures.watermark.displayPositionoptCOMBO(default)Watermark position.
advancedFeatures.watermark.fontColoroptSTRINGText color in hex format.
advancedFeatures.watermark.opacityoptBOOLEANfalseEnable to set advancedFeatures.watermark.opacity. Off uses the model's default.
advancedFeatures.watermark.opacity_valueoptFLOAT0.100.1–1Watermark opacity.
advancedFeatures.watermark.textoptSTRINGWatermark text.
providerSettings.ideogram.magicPromptoptCOMBOAUTOAutomatic prompt enhancement.
providerSettings.ideogram.colorPalette.nameoptCOMBO(default)Preset color palette name.
providerSettings.ideogram.renderingSpeedoptCOMBODEFAULTGeneration speed/quality tradeoff.
safetyoptBOOLEANfalseEnable to set safety. Off uses the model's default.
safety.checkContentoptBOOLEANfalseEnable or disable content safety checking.
providerSettings.ideogram.styleTypeoptCOMBOAUTOVisual style and rendering approach.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOJPGFile format for the generated image.
outputQualityoptINT9520–99Compression quality of the output. Higher values preserve quality but increase file size.
advanced_jsonoptSTRINGOptional JSON merged into the request. For: providerSettings.ideogram.colorPalette.members

Outputs (1)

NameTypeDescription
imageIMAGE