Skip to main content

Documentation

Instructions

Everything from your first render to advanced multi-scene storyboards. Quick links below.

Your first render

  1. 1. Open the canvas

    Sign in and click Canvas in the top nav. You'll see a blank tldraw workspace with a chat sidebar on the right. Auto-save runs every few seconds.

  2. 2. Brief the director

    Type what you want in plain English — e.g. "Hero shot of a ceramic coffee mug, golden hour, 1:1" or "15s ad for a running shoe, 9:16, hook in first frame". Hit Enter.

  3. 3. Watch the job card

    Above the chat thread you'll see an Active Renders card showing which provider + model the director picked, with live progress. The result drops in inline when the provider finishes.

  4. 4. Drag the result onto the canvas

    Click and drag the rendered image or video onto the canvas to compose your shot. Combine multiple renders into a single layout, add text, arrows, or annotations.

Setting up your Brand Kit

  1. Go to Settings → Brand Kit

    Create a kit per brand or per campaign. The director auto-applies the default kit (marked with a star) to every prompt.

  2. Upload a logo

    Drag in your logo (PNG or SVG, < 10 MB). It gets stored in your user-scoped blob namespace — no other user can access it.

  3. Set primary + secondary colors

    Hex codes (e.g. #0066FF). The director references these in prompts so renders stay on-brand.

  4. Write your voice prompt

    Free-text describing your brand voice — "professional, warm, energetic" or "playful but trustworthy". This shapes ad copy when relevant.

  5. Upload a character reference

    For product brands: the hero product shot. For personal brands: a spokesperson photo (used by Hedra for lip-sync). Optional but improves consistency across renders.

Bring Your Own Keys (BYOK)

  1. Why BYOK?

    Track spend directly on your Luma / Hedra / OpenAI account, use your own provider quota, or stay within your team's enterprise contract.

  2. Settings → API Keys

    Paste each provider key. Keys are encrypted with AES-256-GCM (per-user IV) and decrypted only at dispatch time. Click Test to verify each key works.

  3. Generation precedence

    If you have a BYOK key for a provider, the system uses it. If not, the system uses our default key and bills you in credits.

Credits, plans, and billing

  1. What costs what

    Image: 1 credit · Video: 5 credits · Lip-sync: 8 credits · Director brief: 2 credits. Audio split is free.

  2. Monthly allowances

    Free: 50 · Plus ($19): 400 · Pro ($49): 1,200 · Ultra ($149): 5,000. Credits reset every renewal (no rollover).

  3. Failed renders

    If the provider returns an error, your credits are auto-refunded. You only pay for renders that actually started.

  4. Manage subscription

    Settings → Subscription → Manage. You'll be sent to the Stripe Customer Portal to upgrade, downgrade, change billing, or cancel.

Multi-scene Director

  1. Storyboards beyond a single shot

    The Director can produce 3-30 scene storyboards from a single brief, with consistent characters and style across scenes.

  2. Two modes

    Music-video mode (timed to a song duration) and Ad mode (timed for a target aspect ratio + duration). Switch via the mode selector.

  3. Lip-sync integration

    Enable Lip Sync in the Director and the spokesperson scenes will route through Hedra Character-3 with your Brand Kit's character reference.

Troubleshooting

  1. Render stuck on "Rendering"

    Most providers terminal within 2 minutes. If it stays in progress past 5 min, refresh — the job tracker polls server-side and will reflect the latest state.

  2. Canvas is blank or black

    Click "Reset canvas" at the top of the canvas to clear a stuck snapshot. Your renders remain saved in the chat history and Generations log.

  3. Provider key fails

    Settings → API Keys → Test. If a key returns 403, the provider account is locked or out of balance. Top up at the provider's billing page, then test again. Some providers (Luma) have separate API + consumer tiers — make sure the key is from platform.lumalabs.ai not app.lumalabs.ai.

  4. Charged but plan didn't upgrade

    Stripe webhooks usually process within 60 seconds. Refresh once. If it persists, contact support with your Stripe receipt for manual reconciliation.

Still stuck?

We reply to support emails within one business day.