ComfyUI Node

Ideogram 3.0 Edit

Ideogram 3.0 Edit

By Runware·Created 2 years ago·Updated about a month ago· 140
Ideogram 3.0 Edit
  • seedImage
  • maskImage
  • advancedFeatures.watermark.image
  • providerSettings.ideogram.characterReferenceImages
  • providerSettings.ideogram.characterReferenceImagesMask
  • providerSettings.ideogram.styleReferenceImages
  • image
positivePrompt
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.renderingSpeedDEFAULT
safetyfalse
safety.checkContentfalse
providerSettings.ideogram.styleCode
providerSettings.ideogram.stylePreset(default)
providerSettings.ideogram.styleTypeAUTO
ttlfalse
ttl_value60
outputFormatJPG
outputQuality95

If you've ever wanted Ideogram's text-in-image quality without owning a GPU or babysitting a 9.3B-parameter download, this is the node for it. Ideogram 3.0 Edit is the hosted, API version of Ideogram's image editor - you hand it an image, a mask, and a prompt, and it regenerates just the masked region. It runs entirely on Runware's cloud, so the only thing you install is the pack and an API key.

This is the same lab whose 4.0 open weights made the rounds in mid-2026 - the community went back and forth about that model's licensing and its famously strict safety filter. The hosted API is a separate product from those open weights, and a practical one: no license treadmill, no quantization wrangling, and it plugs straight into your ComfyUI graph as a native IMAGE.

How it works

The node is one of the generated classes in the Runware pack. Your seedImage tensor gets uploaded, the request goes over REST through the runware-sdk, and the edited image comes back and is decoded into a normal IMAGE you can feed into Preview Image or Save Image. Nothing runs on your machine but the plumbing.

The inputs that actually matter:

  • seedImage - the base image you're editing (required, IMAGE).
  • maskImage - where the edit happens. Everything under the mask gets regenerated; everything outside is preserved. This is the whole game.
  • positivePrompt - what you want in the masked area. "Replace the sign with a neon 'Open' in cursive" - Ideogram is the best-in-class name in in-image text, so this is where it shines.
  • providerSettings.ideogram.stylePreset - a 63-item dropdown of artistic directions (Art Deco, Bauhaus, 80s illustration, and plenty more). Leave it on (default) unless you want a consistent visual language.
  • numberResults - 1 to 20; each result uses a different seed. Cheap way to roll the dice.
  • safety.checkContent - opt into a content-safety pass. When it runs, the node's title bar shows the verdict, e.g. NSFW: no. Ideogram's moderation is strict; don't be surprised if explicit prompts get refused.

There are also character-reference and style-reference image sockets, plus styleCode (an 8-char hex) if you've saved a style you want to reuse, and magicPrompt (AUTO/ON/OFF) for automatic prompt polish. The outputFormat/outputQuality pair just controls the file encoding; leave them alone unless you specifically need PNG.

Installing it

Runware's official pack, so it's a ComfyUI Manager one-liner: open the Custom Nodes Manager, search Runware, install, restart. Or manually:

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

Then create a key at runware.ai/api-keys and paste it into ComfyUI Settings → Runware API key (or set RUNWARE_API_KEY). The pack's dependencies are light - runware-sdk, pillow, soundfile - no model files, nothing to download. That's the entire point.

Where people get burned

The #1 failure is queueing without a key set - the node just errors until you fix the Settings field or env var. #2 is forgetting this is a paid API: Runware works on top-ups, and the community's gripes are the $20-ish minimum and mandatory card linking, not the per-image price, which is genuinely cheap. Budget before you crank numberResults to 20. And if you expected the open-weights Ideogram's refusal quirks: this is the hosted service, so moderation lives server-side - a refused prompt shows up in the title bar as NSFW: yes.

CategoryRunware/Image/ideogram

Inputs (26)

NameTypeDefaultDescription
seedImageIMAGE
maskImageIMAGE
positivePromptSTRINGText prompt describing elements to include in the generated output.
advancedFeatures.watermark.imageoptIMAGE
providerSettings.ideogram.characterReferenceImagesoptIMAGE
providerSettings.ideogram.characterReferenceImagesMaskoptIMAGE
providerSettings.ideogram.styleReferenceImagesoptIMAGE
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.renderingSpeedoptCOMBODEFAULTGeneration speed/quality tradeoff.
safetyoptBOOLEANfalseEnable to set safety. Off uses the model's default.
safety.checkContentoptBOOLEANfalseEnable or disable content safety checking.
providerSettings.ideogram.styleCodeoptSTRINGPredefined style code (8-char hex).
providerSettings.ideogram.stylePresetoptCOMBO(default)Artistic style preset.
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.

Outputs (1)

NameTypeDescription
imageIMAGE