EmailBuilder.ai
Troubleshooting

AI issues

AI generation is slow, fails, or produces unexpected output — here's what to check.

EmailBuilder uses Claude (Anthropic) for AI features — chat, section composition, branding extraction, inspiration conversion. Most issues fall into a few patterns.

AI section regenerates with the wrong content

You clicked the sparkle badge to regenerate an AI section, but the output doesn't match what you asked for.

Likely causes:

  • The prompt is too vague ("make it nice", "improve this").
  • The prompt references context the AI can't see (a previous draft, a Slack message).
  • An attached content source is empty or stale.

Fix:

  • Rewrite the prompt as a concrete instruction with constraints: "Write a 50-word intro greeting the reader, mentioning that we just shipped feature X. Avoid exclamation marks."
  • If you need the AI to use data from a content source (RSS feed, queue), confirm the source has items in the preview drawer on the email's settings page.
  • For brand-consistent output, rely on the project's branding profile — the AI is given your colours, fonts, and brand voice via context. Set those once and let the AI use them.

AI chat reply uses a completely different layout

You asked the AI to "rebuild the hero using my Three-In-Row module" but the result is a generic hero, ignoring your module.

Likely cause:

You didn't attach the module. The AI guesses from prompt text alone — even mentioning the module by name isn't enough.

Fix:

Use the + module button above the chat input. Pick the module from the dropdown. It attaches as a chip and gets folded into the AI's context as a layout template the AI must replicate. The AI then matches your module's MJML structure exactly and only swaps the content.

The same applies to images: use + file to attach images from the media library so the AI uses real URLs instead of placeholder <mj-image src="https://example.com/...">.

"Generation failed" or "AI service unavailable"

A chat turn or section regen returned an error.

Likely causes:

  • Transient outage at Anthropic.
  • Your account hit the monthly AI call limit (aiAssistant per-cycle counter).
  • The prompt was rejected by Anthropic's safety filter (rare, but possible for prompts that mention sensitive content unrelated to email).

Fix:

  1. Retry the same request — most transient failures resolve on the next attempt.
  2. Check Billing → Usage for aiAssistant count. If at or near the plan limit, upgrade or wait for the cycle to reset.
  3. If the failure repeats with the same prompt, rephrase. Long, multi-step prompts have higher failure rates; break them into smaller asks.

AI is slow (taking > 30 seconds)

Most chat turns and single-section regens complete in 5–15 seconds. Slower than that usually means:

Causes:

  • The prompt requires reading content sources via the get_source_items tool — each tool call adds a round-trip.
  • The MJML being modified is very large (hundreds of lines) — the AI re-reads the full context.
  • An iterative refinement loop is happening (the AI is validating its own MJML and fixing issues before emitting).

Fix:

  • Use single-section regen (the sparkle badge) instead of asking the chat AI to modify the whole email — it sees just one section's context.
  • Shorten templates by saving repeated chrome as linked modules.
  • For the Preview Next Send drawer, expect 1–2 minutes — multi-section regen with content sources is the most expensive case. The progress wizard tells you which step is currently slow.

AI keeps producing the same answer when I rephrase

The AI's output is similar across rephrasings.

Why:

The AI is deterministic-ish at our default temperature. Asking for "the same idea, different wording" doesn't always work — it tends to converge.

Fix:

  • Be specific about the desired difference: "rewrite in a more formal tone", "keep the message but use the structure of my Three-In-Row module".
  • Provide negative constraints: "do not use the word 'awesome'", "no exclamation marks".
  • Provide examples: "here's the tone I want: …".

AI Composer Preview Next Send is stuck on "Generating"

The Preview Next Send drawer shows "Generating" but the step progress doesn't advance.

Causes:

  • The job is processing — multi-section regens with sources can take 2+ minutes.
  • The Agenda job hit a transient error and is retrying internally.
  • The job actually failed but the UI poll hasn't caught up.

Fix:

  1. Wait at least 3 minutes before assuming it's stuck — the wizard says "usually around 2 minutes" but the upper bound is closer to 5.
  2. Refresh the page; the drawer re-polls from the job state and will show terminal status if the job ended.
  3. If it's been more than 5 minutes, contact support with the job ID (visible in the drawer's debug timeline).

Branding extractor fails

The Branding page extractor returned an error or empty result.

See Branding Extractor for the full list of causes. Quick triage:

  • Site behind a Cloudflare challenge → try a different URL on the same domain.
  • Site requires login → there's no workaround; configure branding manually.
  • Site is heavily JS-rendered with delayed content → the extractor may capture a partial result. Re-run to see if the second pass catches more.

Inspiration conversion produces unusable MJML

You forwarded an email to your inspiration inbox; the AI converted it but the result looks broken.

Likely causes:

  • The original used heavy nested-table layout that doesn't map cleanly to MJML.
  • The original had inline styles that fight with MJML's auto-generated styles.
  • The original was a screenshot saved as HTML — the AI converted what it saw, including the screenshot, with no real structure.

Fix:

  • Open the converted email in the editor; manually fix or remove broken sections.
  • For repeat issues with a specific source (e.g. all your Shopify abandoned-cart emails fail similar), use Create Blank Email from Inspiration to get the raw HTML, then rebuild manually in the editor.
  • Forward the plain version of the email (most clients have a "Forward as plain text" option in the more menu) — the AI handles plain-HTML structure better than nested-table styled emails.

AI ignored my brand colours

The AI used a generic palette (purple, etc.) instead of your brand colours.

Likely causes:

  • Your project doesn't have a branding profile set.
  • The branding profile is set, but the AI couldn't find a primary colour value (only neutral greys configured).

Fix:

  1. Go to Branding in the app.
  2. Either run the Branding Extractor or set primary, secondary, text, and background colours manually.
  3. Retry the AI request — the next generation reads the updated profile.

Privacy and data handling

  • Your prompts and content are sent to Anthropic to fulfil each request. Anthropic does not use this data to train models per our API terms.
  • Attached files sent via "+ file" attach URLs only, not file contents. The file is fetched from the URL by the AI when it inserts the image in MJML.
  • Content sources read via get_source_items are sent to the AI as snippets, not full documents. Tunes per-source via the connection's settings.

For specific data-handling questions, see our Privacy Policy or email [email protected].

On this page