Changelog

What's new in
Multivio

Follow along as we ship new features, improvements, and integrations to help you grow your social presence.

June 11, 2026

Newgallery

A media library built for creators

Your Media Library got a ground-up rework around one idea: see what you have, find it fast, act on it in place.

  • Tiles tell you what things are — name, video duration, file size, AI/Public/Processing badges, right on the tile
  • Save favorites from the grid — hover any tile and hit the bookmark; the Saved tab collects them
  • Filter and sort like a pro — image/video chips, sort by newest, oldest, largest, or most liked, plus the existing tabs and prompt search
  • A real detail view — click any item: zoomable preview, copyable prompt (negative prompt too), model and credit cost, which posts used it, sharing controls, and rename that finally works
  • Library at a glance — items, images, videos, shared count, and storage used in the header
  • Better uploads — per-file progress with errors that stick around long enough to read
  • Swipe between items on your phone; shift-click to select ranges on desktop
Newgallery

Manage everything you share, from one place

New Shared page in your dashboard sidebar, right under Media.

  • See every creation you've published to the public gallery
  • Copy any public link, or open it to see what visitors see
  • Change a prompt's visibility or unpublish a single item
  • Select several items and unpublish them in one click
  • Your public profile link sits at the top — copy it straight into a bio

Haven't claimed a handle yet? The page walks you to it.

Improvedgallery

A cleaner, bolder Multivio — new landing page and public galleries

We redesigned the public side of Multivio around one idea: let the work speak.

  • New landing page — quieter, more spacious, typography-first
  • Explore, refreshed — cards now show like counts, and the Trending / Top / Latest tabs got a cleaner look
  • Creator profiles and share pages now have proper site navigation, so people who open your shared link can find their way around (and sign up)

May 27, 2026

Newignitecompose

Multivio now speaks — voice cloning, dictate-to-post, and speaker-aware transcription

Multivio's voice surfaces just got a major upgrade. Powered by xAI's Voice APIs (SOC 2 Type II, HIPAA-eligible, GDPR — audio never used for training).

What's new — four pieces shipping together:

Clone your own voice. Settings → Voices lets you upload a 30–120s audio sample and we generate a custom voice that works anywhere a built-in voice does. Free gets 1 clone, Pro/Creator+ get 5, Max gets 10, Team gets 10 pooled per workspace.

Use your voice in Flow. Open any Voiceover node and your cloned voices appear in a "Your voices" group above the 5 built-in presets (eve, ara, rex, sal, leo). Pick yours, generate, your audio plays on your video — in your actual voice.

Dictate posts in Compose. New mic button next to the Image/Video quick actions on Compose's chat input. Click → speak → release. Your draft fills with the transcript. Mobile-creator UX in one click.

Smarter subtitle transcription. Flow's Auto-transcribe now uses xAI STT first — better speaker diarization for multi-host audio (so podcast clips can label who's talking) and more accurate text across 25 languages. Groq Whisper + OpenAI Whisper stay as defensive fallbacks. SubtitleCues now carry an optional speaker label.

Plus from yesterday's Subtitle node redesign (S-1):

  • Per-cue editor — edit any single cue's text without losing word-level timing on the rest
  • Use voiceover text as captions — when your TTS text feeds the audio, the captions copy your text verbatim (zero STT errors)
  • Trust banner — every cue list tells you where it came from: STT, voiceover text, or manually typed

All four V-phase pieces share infrastructure — voice clones are workspace-scoped so Distill (when it ships) inherits the clone library for free.

May 26, 2026

Newcomposeignite

See where every post came from, and where every render ended up

Until now, you could navigate FROM each Multivio product TO Backlog (Compose / Ignite / Flow all have "Send to..." buttons that shipped earlier this week), but once you LANDED on a post in Backlog, the breadcrumb was lost. You couldn't tell at a glance whether a published post came from a Compose chat draft, a Flow render, or a manual upload.

This update closes that loop in both directions.

On every post in Backlog (grid view and list view) — a small lineage chip:

  • From Flow · [project name] — clickable, opens the source Flow project
  • Drafted in Compose — clickable, opens the source Compose chat session
  • Nothing when the post was created from a direct upload (no false signal)

Older Flow-published posts (from before today) show a non-linked From Flow label as a graceful fallback — they didn't store the project id at publish time so we can't deep-link, but the lineage is still visible.

On every Flow Output that's been published — a new "Published to N posts" list inside the Output inspector, with each post showing its platform + status (Live / Scheduled / Publishing / Failed) and click-through to open it in Compose. Hidden when the render hasn't been published anywhere — keeps the inspector tight.

Under the hood:

  • Flow's social-post route now writes metadata.flow.projectId, outputNodeId, and projectName onto every post it creates. Project name is captured at publish time so renames don't break old labels.
  • New GET /api/media/[id]/posts endpoint returns the posts that reference a media row — scoped to the authenticated user so workspace-level data doesn't leak.
  • New shared <LineageBadge /> component (src/components/posts/LineageBadge.tsx) — usable anywhere we display posts.
Newignitecompose

Flow gets a proper case library — pick a starting point instead of building from scratch

New Flow projects no longer start as a blank canvas. The list page at /dashboard/flow now opens with a curated case library — pick the kind of post you want and Flow spawns the full graph (clips · voiceover · subtitle · Output · Social Post) with the Social Post node already wired up for your target platform(s).

9 cases covering the common social-content workflows:

Short-form vertical (9:16):

  • Vertical everywhere — single render fans out to YT Short + IG Reel + TikTok + FB Reel + Threads (multi-platform)
  • YouTube Short — YT-only
  • Instagram Reel — IG-only, posts as a Reel
  • TikTok clip — TikTok-only

Landscape (16:9):

  • YouTube landscape — YT + LinkedIn cross-post

Square (1:1):

  • Square feed video — IG feed + FB + X + LinkedIn + Threads

Image:

  • Quote card — IG + FB + LinkedIn + X + Pinterest
  • Pinterest pin — 2:3 Pinterest-only

Specialty:

  • Voiceover narrative — image + voice playing over it as a short reel for YT + IG + TikTok

Platform filter chips at the top let you scope to one platform (showing only the cases that target it) or stay on All to see every case grouped by category.

Structure-only by design. Each case wires up the nodes and edges, sets the right aspect ratio + output preset, and pre-enables the Social Post platforms — but leaves prompts and captions empty. The point is bootstrap structure, not pre-written content. You bring the voice.

(The previous 3-template strip — Reel, Quick Card, Talking Head — is replaced. The Reel template has been superseded by Vertical Everywhere + YT Short; Quick Card by Voiceover Narrative + Quote Card; Talking Head by YouTube Short + YouTube Landscape.)

Newignitecompose

Flow: render progress detail, cost estimate, and timeline preview

Three focused upgrades to Flow's editor that close the most-asked-for gaps:

Render progress detail. The Render button no longer just says "Rendering…" while you wait. It now surfaces the actual stage the worker is in — Starting · Downloading clips · Composing · 45% · Burning subtitles · Uploading — pulled straight from AGDOC's worker reports. When multiple Outputs render in parallel, the per-Output OutputInspector button shows that specific Output's stage so you can tell which is which.

Render cost estimate. The Output inspector now shows what your render will cost in credits, plus a "X of Y clips already generated" hint so you can see how much is sunk cost vs. what's still to spend. Live and accurate — based on each clip's actual model + duration. Library/recorded clips count as free.

Timeline preview pane. A new collapsible strip below the canvas shows each Output's composition as a row of clip thumbnails with durations, type icons, attachment badges, and total cost. Click any clip in the timeline to jump to it in the canvas. Sequence arrows between clips let you see the flow at a glance without reading the whole graph. Default open, your collapse preference sticks across sessions.

Lessons learned from the F-A wave: the original F-C scope (clip thumbnails on canvas, per-clip inline render, render-only-changed) was either already-done in F-A/F-B or marginal-value, so we re-scoped to these three items where real user-visible gaps remained. Smaller surface, higher ROI.

May 25, 2026

Newignitecompose

Flow clip transitions now render — crossfade, fade-to-black, slides all live

The transition picker in Flow's edge inspector (shipped this morning) was metadata-only — the actual FFmpeg pipeline rendered every clip-to-clip handoff as a hard cut while the AGDOC side caught up. That's done now.

What works end-to-end as of this deploy:

  • Crossfade — A fades out as B fades in over your chosen duration
  • Fade to Black / Fade to White — A fades down through black/white, B fades up from it
  • Slide ← / Slide → — B slides in from the right or left
  • Duration slider — 0.1–2.0s, with automatic clamping so a 0.5s transition can't run on a 0.3s clip (clamped to clip duration − 0.05s)

Audio crossfades alongside the video via FFmpeg's acrossfade filter, so VO and source audio blend together instead of cutting abruptly.

The "Coming soon" amber note inside the picker is gone — pick a transition, hit Render, watch it play.

Under the hood:

  • AGDOC's compose endpoint now branches on composition.transitions[]. Empty / absent → legacy single concat=n=N filter (zero regression for non-transition renders). Present → chained xfade/acrossfade builder with offset math.
  • Cuts within a transition-bearing chain use concat=n=2 to preserve frame timing.
  • Transition durations clamp to min(clip_a, clip_b) - 0.05s server-side so xfade never fails with "duration too long".
  • 8 inline unit tests cover the parse + build paths.
Newignitecompose

Flow: branching renders, range narration, range subtitles, and edge transitions

Flow Phase B closes the three architectural gaps the audit called out — graphs are no longer locked to a single linear chain.

Multiple Output nodes per project. You can now have [Video 1] → [Output A] and [Video 2] → [Output B] (or even [Video 1] → [Output A] + [Video 1] → [Output B]) in the same flow. Each Output renders into its own file independently. The palette button reads Render All (N) when 2+ Outputs exist; each Output's inspector also has a per-Output Render this output button for targeted re-renders. Pre-existing single-Output projects render identically.

TTS narration across multiple clips. One voiceover can now play across [v1] → [v2] → [v3] via a single attachment edge plus a Spans setting on the TTS node. The inspector shows a visual chip strip with the covered range highlighted in teal — drag the slider, see exactly which clips your voice covers.

Subtitles across multiple clips. Same pattern for Subtitle nodes. Whisper cue timestamps stay exact across the span; typed lines distribute evenly across the summed duration. Highlighted in amber.

Clip-to-clip transitions (UI only — render lands next). Click any sequence edge to open the new Edge Inspector. Pick from Cut · Crossfade · Fade to Black · Fade to White · Slide ← · Slide →, with a 0.1–2.0s duration slider. Edges with non-default transitions render thicker on the canvas so you can read your timeline at a glance. The actual xfade FFmpeg work lands in the next update — until then a small amber note inside the picker tells you the transition is saved but rendering as a hard cut.

Under the hood (internal):

  • Render state is per-Output now — lives on each Output node's BaseNodeData. Polling spawns one ticker per running Output via a stable runningKey fingerprint.
  • New findOutputNodes and sequenceChainFrom topo helpers.
  • compose-builder pre-resolves every scene's duration into an array so TTS/subtitle spans can sum across the window correctly.
  • New selectedEdgeId slot in FlowContext; SELECT_EDGE and UPDATE_EDGE_TRANSITION actions. Node + edge selection are mutually exclusive.
  • AGDOC composition payload gains transitions[] — typed in AgdocCompositionTransition. Forward-compatible: AGDOC currently ignores it.
Newignitecompose

Flow gets a proper node palette, edge-kind teaching, platform export presets, and outbound handoffs

Flow — Multivio's node-graph composer — got the first round of polish toward becoming a real ComfyUI-for-social tool.

What's new in Flow today:

  • Left-rail node palette. Categorized library (Generate / Audio & Captions / Compose / Publish) with search. Drag any node onto the canvas — drops at your cursor. Click-to-add still works. The old floating top-bar is gone.

  • Edge-kind teaching. Three new pieces explain Flow's connection rules:

    • Hover any node's handle → tooltip says exactly what it accepts/emits.
    • Collapsible legend bottom-right of the canvas: 🔴 Sequence chains clips · 🟢 Attachment overlays VO/captions · 🟣 Reference sends an image to video gen as a keyframe.
    • The first time you draw an edge in any project, a small toast surfaces the auto-inference rule. Dismissed forever.
  • Platform export presets on the Output node. Seven one-click targets: YouTube Short · Instagram Reel · TikTok · Story · YouTube 16:9 · Square 1:1 · Portrait Feed 4:5. Picking a preset auto-sets aspect ratio and surfaces an amber warning if your total clip duration exceeds the platform's recommended cap (advisory only — render still goes through).

  • Outbound handoffs. Once a Flow render lands, the Output inspector now has three buttons matching Ignite's and Compose's:

    • Send to Compose — chat opens with the render attached + a caption prompt seeded.
    • Send to Ignite — Ignite opens with the render as a new starting asset.
    • Use in post — jump to Backlog's "new draft" with the media pre-attached.

    Combined with the inbound ?seedMedia= that already pre-populates a fresh Flow project, the three products now hand work back and forth in both directions.

Under the hood (internal):

  • Flow's inspectors now derive model metadata from the central registry (src/lib/ai/registry.ts) instead of hand-maintained arrays. 54 lines of duplicated capability data deleted.
  • OutputNodeData gains an optional presetId — pre-existing graphs render unchanged.

Coming in F-B (next): branching to multiple Output nodes (independent renders), TTS/subtitle range spans, and clip-to-clip transitions.

Newignitecomposegallery

Send media between Ignite, Compose, and Flow — pre-populated and ready to edit

The three Multivio products now hand work off to each other with a single click — and the destination opens pre-populated, not staring at an empty form.

From Ignite (generated image / video) you can now:

  • Send to Compose — Compose opens with the media already attached and a caption prompt pre-filled (e.g. "Write a caption for this image and create a draft post.").
  • Send to Flow — Flow opens a brand-new project with a library-source node pointing at your asset, already wired to an Output node. Ready to render, or chain more nodes.
  • Use in post — jump straight to Backlog's "new draft" with the media attached.

From Compose (a generated asset in chat) you can now:

  • Refine prompt — reopens Ignite with the same model + reference, ready to tweak.
  • Make variations — Ignite opens primed to generate N more of the same asset.
  • Edit (Nano Banana Pro) — Ignite opens in inpaint-edit mode for image edits.

No more "Send to…" buttons that just dump you into a blank product. The receiving side reads the URL contract, restores the workflow, and gets out of your way.

Newapi

New Creator+ tier — $35/mo, 2,000 credits, slots between Pro and Max

If you're outgrowing Pro ($20/mo, 1,000 credits) but Max ($60/mo, 3,000 credits) feels like overkill — Creator+ is built for you.

Creator+ — $35/mo (or $28/mo annual)

  • 2,000 credits/month — ~75% more generations than Pro
  • Same model access as Pro (Grok Imagine + Veo Fast 720p, all image models up to 2K)
  • Same unlimited channels, storage, scheduled posts, text AI
  • 1 workspace
  • No priority queue — upgrade to Max for that

The tier ladder now:

TierMonthlyCredits/moBest for
Pro$201,000Solo creators getting started
Creator+$352,000Solo creators outgrowing Pro
Max$603,000Power creators wanting priority + premium models
Team$30/seat1,200/seat pooledTeams (2-seat min)

Existing Pro and Max subscriptions are unaffected — upgrade or downgrade in Settings → Billing any time, prorated automatically.

Fixedapibugfix

4 analytics platforms unblocked: Facebook, Instagram, LinkedIn org, YouTube — plus token refresh repaired

A self-diagnostic added to the analytics cron earlier today (fallback_reasons + fallback_samples in the response body) surfaced the actual platform-API rejection text for every silent fallback. Turned out every failing platform was a fixable code bug, not an account-level problem:

Facebookpost_impressions / post_impressions_unique / post_engaged_users were retired in Meta's Nov-15-2025 Page Insights deprecation. Switched to the surviving post_video_views + post_clicks set; engagement rate still derives from the separate aggregates query (likes+comments+shares) which keeps working.

Instagram — Meta deprecated per-media impressions in April 2025 in favour of a universal views metric. Swapped the fetcher's metric list to use views and mirrored it into our normalised impressions field so cross-platform aggregations stay consistent.

LinkedIn organisation pages — the old shares[0]={urn} bracket syntax now 403s with "Unpermitted fields present in PARAMETER". Switched to the modern REST.li List(urn:li:share:N) array literal (built by hand because URLSearchParams URL-encodes the parens, which LinkedIn rejects).

X (Twitter)non_public_metrics requires elevated app permission (Project + Premium/Pro tier). Without it X returns blanket 401 on the whole call — even with a freshly-refreshed token. Dropped the non_public_metrics request. We lose only url_link_clicks; everything else (impressions, likes, replies, retweets, quotes, bookmarks) still flows through.

Token-refresh cron fixed too — two long-standing bugs meant the daily cron was a silent no-op for ~unknown months: (1) it referenced a non-existent account_name column so every query errored and the catch block returned 0 connections; (2) once a token slipped past expiry the query excluded it forever, so users had to reconnect manually. Both fixed; the cron now successfully refreshes YT/X/TikTok tokens that had previously been stuck expired.

Cron also now filters is_active = true when looking up connections, so 23 historical X posts from a long-disconnected account stop hammering the API and get a clean orphan_account_id classification instead.

Result: real platform-API rows jumped from 6/50 to 45/50 in a single cron run. The remaining 5 failures are now all classified-and-correct: 14 X posts from the inactive account (orphan), 7 LinkedIn personal-profile posts (API limitation), 2 TikTok Inbox-mode posts (no queryable id).

Estimator pruned — ~1,000 synthetic rows deleted in a surgical pass: only for posts that have produced at least one real platform_api row. The 1,523 remaining estimator rows are legitimate fallbacks for posts that genuinely can't get real data (LinkedIn personal, TikTok Inbox, deleted FB/IG posts, inactive X account).

Newapibugfix

Real analytics now live for LinkedIn, Instagram, Threads, and TikTok

Four more platforms ship in today's rebuild push. Combined with Facebook, YouTube, and X earlier today, that means every connected platform except Pinterest now pulls real engagement from the platform API instead of estimator output.

At-a-glance: what's now real

PlatformReconnect required?Notes
LinkedInNo — but only for organization pagesLinkedIn has no public personal-profile analytics API. Personal-profile posts still show estimator output.
InstagramNo — but only for Business / Creator accountsPersonal IG accounts aren't eligible for the Insights API.
ThreadsNoExisting threads_manage_insights scope is sufficient.
TikTokYesNew video.list scope added. Reconnect at Settings → Platforms. TikTok also requires app-level approval for the scope, so it may take a few cron cycles before data appears.

Where the reconnect banners show up

  • A reconnect banner appears at the top of /dashboard/analytics for any platform whose stored OAuth scopes don't include the new analytics scope. So far that's Facebook (read_insights), YouTube (yt-analytics.readonly), and now TikTok (video.list). Once you reconnect, the banner disappears and the next sync writes real numbers.

Under-the-hood notes (for anyone reading the codebase)

  • Each platform gets its own typed fetcher in src/lib/platforms/{platform}-metrics.ts with classified error reasons. No more silent fallbacks — every failure path Sentry-logs with the classification.
  • The cron dispatcher (tryFacebook, tryYoutube, tryTwitter, tryLinkedin, tryInstagram, tryThreads, tryTiktok) is now eight branches behind one collectMetricsForPost() function.
  • Personal-profile / personal-account skips are quiet (no Sentry noise) because they're documented platform limitations, not errors worth alerting on.
  • Some platforms don't expose distinct impressions (Threads, TikTok). For those we mirror the headline view-count into the impressions field so cross-platform engagement-rate comparisons stay coherent and the dashboard's denominator never lands on zero.

What's left

  • Pinterest — deferred (zero post volume in DB; not worth implementation time yet).
  • Estimator cleanup — once a week or so of real data has accumulated across the platforms, we'll DELETE FROM post_metrics WHERE source='estimate' for the platforms that are now reliably writing platform_api rows. The Sample-data banner stays up until that cleanup is done.
Newapibugfix

X (Twitter) analytics now pull real impressions, likes, replies & retweets

Phase 3 of the Analytics rebuild ships: X posts now sync real impressions, likes, replies, retweets, quotes, bookmarks, and link clicks from X API v2 instead of the placeholder estimator.

No action needed from you

Unlike Facebook and YouTube, your existing X connection already has the right permissions (tweet.read is sufficient). The next cron run at 06:00 UTC — or one click of the "Sync" button on /dashboard/analytics — will start writing real X numbers.

Why this was previously blocked

The original plan deferred X because the only path to read tweet metrics was the $200/mo Basic API tier. On 2026-02-06, X replaced that with pay-per-use: $0.005 per tweet read, with 24-hour deduplication so cron + manual sync on the same day only counts once. At Multivio's scale that's roughly $2–$15 per month platform-wide — a fraction of the old fixed cost — so the integration is now economical.

What changed under the hood

  • New typed src/lib/platforms/twitter-metrics.ts fetcher with classified errors (invalid_token, forbidden, unknown_post, rate_limited, budget_exceeded, network, other) — including the new HTTP 402 budget_exceeded for when the PAYG wallet runs dry
  • Cron dispatcher gains tryTwitter() parallel to tryFacebook / tryYoutube; same Sentry-on-failure pattern
  • Manual /api/analytics/sync route's X case rewritten to use the factored fetcher
  • Uses api.x.com/2/tweets/{id}?tweet.fields=public_metrics,non_public_metricsnon_public_metrics unlocks impression_count and url_link_clicks for the tweet's own author (i.e. you)

What's next

LinkedIn UGC analytics is the next free-API platform. Instagram Business, Threads, Pinterest follow per docs/ANALYTICS_FIX_ROADMAP.md. TikTok still gated on TikTok dev-platform approval.

Newapi

See real engagement on published post cards in Backlog

Published posts now appear in Backlog with a new Published tab and a compact engagement badge on every card. The badge shows:

  • Impressions (formatted: 1.2K, 45K, 1.2M)
  • Engagement rate colour-coded — green ≥5%, neutral 1-5%, muted <1%
  • Hover for the last sync time

Only real platform-API rows count — synthetic estimator numbers show "—" instead of misleading you with a fake number. So today this means Facebook Pages and YouTube videos (once you've reconnected per the Phase 1/2 changelogs) — everything else will fill in as we wire each platform.

This saves a click for the common "did anyone see this?" check; no need to leave Backlog and dig through Analytics.

Newapibugfix

YouTube video analytics now pull real views & engagement from the Analytics API

Phase 2 of the Analytics rebuild ships: YouTube videos now sync real views, likes, comments, shares, and watch time from the YouTube Analytics API v2 instead of the placeholder estimator.

You need to do one thing

If you already had a YouTube channel connected before today, head to Settings → Platforms and click Reconnect on the channel. We added a new yt-analytics.readonly permission that's required to read per-video reports — your existing connection doesn't have it, and a red banner on the Analytics page will prompt you.

What changed under the hood

  • Daily cron at 06:00 UTC and the manual "Sync" button now call /v2/reports?ids=channel==MINE&dimensions=video&filters=video=={id} for every published YouTube post
  • Same provenance tagging as Facebook — source='platform_api' for real rows, source='estimate' for the synthetic fallback
  • Every fetch failure is logged to Sentry with the classified reason (missing scope, invalid token, deleted video, rate-limit)
  • Note: YouTube's basic reports endpoint doesn't expose distinct per-video impressions, so for now we mirror views → impressions in the cron output. The dashboard's engagement-rate calculation now has a sensible denominator and the numbers compare apples-to-apples with Facebook

What's next

LinkedIn UGC analytics is the next free-API platform on the rebuild. Instagram Business, TikTok (pending dev approval), Threads, and Pinterest follow per docs/ANALYTICS_FIX_ROADMAP.md. X / Twitter remains blocked behind the $200/mo Basic API tier — separate decision pending.

Newapibugfix

Facebook Page analytics now pull real engagement from Graph API

Phase 1 of the Analytics rebuild ships: Facebook Page posts now sync real impressions, reach, engaged users, clicks, likes, comments, and shares from Graph API v21.0 instead of the placeholder estimator.

You need to do one thing

If you already had a Facebook Page connected before today, head to Settings → Platforms and click Reconnect on the page. We added a new read_insights permission that's required to read per-post insights — your existing connection doesn't have it, and a blue banner on the Analytics page will prompt you.

What changed under the hood

  • Daily cron at 06:00 UTC and the manual "Sync" button now call Graph API v21.0 /{post}/insights and /{post}?fields=reactions.summary,comments.summary,shares in parallel for every published FB Page post
  • New source column on post_metrics distinguishes real (platform_api) from synthetic (estimate) rows
  • Every fetch failure is now logged to Sentry with the classified reason (missing scope, invalid token, deleted post, rate-limit, etc.) — no more silent fallbacks
  • If a connection is missing the new scope we skip the API call entirely (saves a guaranteed-400 round-trip) and surface the reconnect banner

What's next

YouTube ships in Phase 2 with the same pattern. LinkedIn, Instagram Business, TikTok, Threads, Pinterest follow per the roadmap in docs/ANALYTICS_FIX_ROADMAP.md. X / Twitter requires the $200/mo Basic API tier — separate decision pending.

Fixedbugfix

Analytics now clearly labeled as "Sample data" until real-API integration ships

An internal audit found that the Analytics page has been showing illustrative sample numbers rather than real engagement pulled from each connected platform. The daily sync was generating estimated data instead of calling the underlying Facebook / Instagram / X / LinkedIn / YouTube / TikTok / Pinterest / Threads APIs.

What changed today

  • The Analytics page now has a clear "Sample data — not real platform metrics" banner
  • The sidebar entry is renamed to Analytics (Demo)
  • Subtitle on the page header reads "sample data"

What's next

  • Per-platform real-data wiring is on the roadmap. Facebook and YouTube ship first (both have free APIs and existing OAuth scopes).
  • We will remove the "Demo" labels as each platform's real integration lands.
  • See docs/ANALYTICS_FIX_ROADMAP.md (internal) for the per-platform plan.

We want you to trust the numbers you see, so the right move was to be plain about what was on screen before we ship the fix. Sorry for the confusion if you've been making decisions off the dashboard.

Improvedapi

Team plan now starts at 2 seats — $60/mo floor

Two-person teams shouldn't have to pay for a third phantom seat. The Team plan minimum drops from 3 → 2 seats.

What changes

  • New floor: $60/mo (monthly) or $48/mo (annual) for a 2-seat workspace
  • 2,400-credit pool by default (1,200/seat × 2), shared across both members
  • All existing Team features available from seat 1 — roles, approvals (when shipped), shared brand kit, shared media library, audit log
  • Existing 3+ seat teams are unaffected; no change to per-seat pricing

Why — co-founder teams, two-person agencies, and creator+VA pairs were our biggest "almost-Team" segment. Bumping them onto the Team plan unlocks workspace collaboration without making them buy a seat they don't use.

May 8, 2026

Newstudioai

Multivio Flow is here — chain AI generation steps into a finished video

Flow is a new way to compose AI videos by chaining generation nodes — like ComfyUI, but built for social. Find it in the left nav under Create → Flow.

Why it's different. Compose is conversational ("write me a 30s reel about X"). Ignite makes one image or video at a time. Flow lets you wire them together: a Video Gen node → a Voiceover node → a Subtitle node → an Output node. Every node is a step you can re-roll independently. The output composes into one finished video.

What's in v1:

  • Six node types: Video Gen, Image Gen, Voiceover (TTS), Subtitle, Output, Social Post
  • Wizard mode — type one prompt, Flow drops a starter graph onto your canvas
  • Templates to start from (e.g. "Voiceover reel", "Image-led story", "Hook + voiceover")
  • Direct publish to YouTube + Facebook from the canvas, with previews and pre-publish checks (see today's other entries)
  • Auto-saved canvases with thumbnail snapshots in your project list

This is a Beta. Tell us what breaks — the in-app feedback button now goes to a real triage queue.

Newcomposeai

Edit your live YouTube videos and Facebook posts from Multivio

Already published a YouTube video or a Facebook Page post? You can now fix typos, swap thumbnails, and refresh metadata without ever leaving Multivio.

Open the Calendar, click any published Facebook or YouTube post, and hit Edit on Facebook / Edit on YouTube. A side drawer opens with everything the platform lets you change.

For YouTube: title, description, tags, category, privacy, and custom thumbnail — all editable forever. Useful for retitling underperforming videos or fixing a typo a viewer just pointed out.

For Facebook: edit the post body within Facebook's edit window. Media stays the same.

Changes save in seconds and show up on the live post (YouTube can take a few minutes to reflect changes in search).

Newcompose

Real previews of your YouTube and Facebook posts before you publish

When you set up a YouTube upload or Facebook post in Flow, you now see exactly how it will look on the platform — before you click Publish.

YouTube: the watch-page card with your thumbnail, title, channel info, privacy badge, and description fold (only the first 3 lines visible by default — just like real YouTube). Plus a search-result preview showing what appears in search listings.

Facebook: the Page card with your page name, scheduled time, caption (with "See more" cutoff), correctly-cropped media, action bar, and even a preview of your first comment if you wrote one.

The preview reacts as you type — change a title, watch it update in the search-result mini-card. Toggle "Publish as Reel" and watch the media frame switch from 16:9 to 9:16. Catches the kind of cropping / missing thumbnail issues that used to bite you only after publish.

Newcomposeai

YouTube and Facebook post setup, with everything the platforms support

When you publish via Flow's Social Post node, YouTube and Facebook now expose every relevant field the platforms accept — not just caption + privacy.

YouTube picks up:

  • Custom thumbnail (paste a URL — JPEG/PNG, ≤2 MB)
  • Tags with a chip input and a 500-character total counter
  • Category dropdown (Education, Comedy, How-to & Style, etc. — 15 categories)
  • Playlists to auto-add the video to (we fetch your channel's playlists for you)
  • Notify subscribers toggle
  • Allow comments / likes / embedding toggles
  • Made for kids (COPPA) toggle
  • Privacy (Public / Unlisted / Private)

Facebook picks up:

  • First comment — automatically posted as a follow-up after the main post lands. Use it for links and hashtags so your post body stays clean (a Page-marketing best practice that lifts reach).
  • Publish as Reel toggle for vertical video. Falls back to a feed video post if the video doesn't qualify (must be vertical and ≤90s).

All of these used to require switching to YouTube Studio or Facebook's composer to set after the fact. Now they ride along with the publish.

Newcompose

Pre-publish checks with one-click fixes

When you set up a YouTube or Facebook post, Multivio now runs 13 platform-specific checks and shows what to fix — with a button to fix it.

Examples:

  • YouTube title is empty → click Suggest title from description and an AI proposes a 70-character title from your description
  • Vertical video ≤60s without #Shorts → click Add #Shorts to title and we append it (respecting the 100-char limit)
  • No custom thumbnail → flagged with the CTR cost so you fix it before publishing
  • Link in Facebook body → click Move link to first comment to lift the URL out and drop it into the first-comment field (links in body suppress Page reach)
  • Vertical video on Facebook with Reel toggle off → click Publish as Reel so you don't lose the top + bottom of the frame to the feed crop

Each issue is severity-ranked: blockers (red, must fix), warnings (amber, recommended), tips (blue, advisory).

Fixedcomposebugfixai

YouTube uploads now respect every setting you picked

A handful of YouTube uploads were silently going up with the wrong settings. Fixed:

  • Privacy was always Private. You picked Public; the video uploaded as Private. Now respects your choice.
  • Made-for-kids toggle was ignored. The COPPA flag wasn't being passed through. Now it is.
  • Category was always "People & Blogs" regardless of what you picked.
  • Tags went up empty. The hashtags you wrote in the caption weren't being attached as tags. Now they are.

If you uploaded videos before today and the settings look off, you can fix them in one place — the new Edit on YouTube drawer (see below).

Performancecomposeperformance

Faster, more reliable YouTube uploads for large videos

YouTube uploads now stream in 10 MB chunks with automatic retry on transient failures. Translation: the network blip mid-upload that used to restart your 500 MB Veo 4K video from byte 0 now retries just the failed segment.

You'll mostly notice this on slow connections or large videos. The improvement compounds the bigger your file is.

Fixedstudio

Flow project tiles now show a thumbnail

Your Flow projects on /dashboard/flow now show a snapshot of the canvas as the tile thumbnail — auto-captured a few seconds after edits settle.

If the canvas contains generated media (images / video previews) and your browser can pull them with CORS headers, the thumbnail shows them. Otherwise it falls back to a graph-only snapshot — better than the old plain icon either way.

May 7, 2026

Fixedigniteaibugfix

Reference images now work reliably for AI image edits

Editing an AI image with a reference (e.g., "use this style") was failing with confusing 403 / "Unsupported MIME type" errors when the reference was a Multivio-stored asset. Now fixed across all providers — Ignite, Compose, and Flow.

Affected: any model that accepts a reference image (GPT Image 2, Gemini 3 Pro, Veo with reference frames, etc.). The bug was that our servers couldn't read the reference back from our own CDN reliably; now they pull it directly from storage. Re-run the same prompt — it works.

April 23, 2026

Improvedgallery

Profile pages are faster to browse + bulk share in one click

A handful of upgrades to how public galleries feel and how you manage what's on yours.

Click-to-lightbox on profiles. Click any piece on multivio.com/u/your-handle and it opens in an overlay — no full navigation, no back button. Close with Escape, the backdrop, or the ✕. The URL still updates to /m/[id] so the link is shareable.

Stats at a glance. Every profile now shows works count, total likes received, and the month you joined — right under your identity block.

Sort your gallery. Toggle between Latest (default) and Most liked at the top of your profile grid. Useful for showcasing your best work.

Bulk publish or unpublish. Enter Select mode in your media library, pick multiple items, and hit Publish or Unpublish in the toolbar. The result summarises what went public, what was blocked for safety, and what failed.

Richer tiles. Hover any tile on a profile to see the prompt teaser AND the like count in one overlay.

Newgalleryignite

Share your creations to a personal gallery

Every generation in your media library can now be published as an unlisted link — perfect for sending a single piece to a friend or client without making it indexable on the web.

Claim your handle. Head to Settings → Profile → Public Gallery and pick a handle. Your page lives at multivio.com/u/your-handle with your bio, cover image, and up to three external links.

Per-asset control. Open any tile in the media library and choose Publish to Multivio. Each item has its own prompt-visibility setting:

  • Full — show the whole prompt, with a Copy Prompt button for viewers
  • Teaser (default) — just the first ~30 characters with a trailing ellipsis
  • Hide — no prompt shown at all

Safety first. Before anything goes public we run a safety check. NSFW imagery can't be shared. You can unpublish anytime — the link then shows a friendly "no longer available" tombstone instead of a broken 404.

Feedback from viewers. Signed-in viewers can Like or Dislike any public piece — mutually exclusive, one tap to switch. Counters update instantly and show next to the creator on every public page.

Private is still the default. Nothing in your library becomes public until you explicitly publish it.

April 19, 2026

Newstudio

New subtitle styles + live customization in Studio

We rebuilt the Studio subtitle editor around the look people actually want in 2026.

Six modern presets — pick a starting point that matches the vibe:

  • Viral — big bold white with a fire-red active-word highlight (the IG Reels / TikTok default)
  • CapCut Bold — huge UPPERCASE Impact with a yellow pop animation
  • Karaoke — smooth cyan fill that tracks each word as it's spoken
  • Minimal Clean — white text on a rounded dark pill, for tutorials and B-roll
  • Subtitle — cinematic captions anchored at the bottom of the frame
  • Classic — the Netflix-style white-on-black bar

Customize any field live — font family, size (16–96px), weight, color, outline width, background, position (top / center / bottom), UPPERCASE toggle, animation, highlight color, words per line. Changes render into the preview immediately and burn exactly as shown.

Works in every language, and the burned video now matches the preview field-for-field (previously several style settings were quietly dropped).

Newstudio

Bilingual subtitles with karaoke

You can now burn two languages stacked — top line in one language, bottom in another, like a movie. Turn it on from the bilingual picker once you've transcribed and translated to at least two languages.

Karaoke/word-highlight still animates the top line while the second language sits plain underneath, so you don't lose the viral look when adding a translation.

April 17, 2026

Fixedigniteaibugfix

Regenerate now actually varies the image

Clicking Regenerate on an image or video now produces a genuinely different result each time. Previously, the same prompt returned near-identical output because the seed was missing or passed to the wrong part of the provider's API.

Fixed across all providers — Gemini (Nano Banana, Gemini 3 Pro Image), Grok Imagine, Veo, FLUX, BFL — so no matter which model you pick, regenerations will feel varied again.

Newigniteai

Seed control for reproducibility

Want to reproduce a specific image exactly? Or try the same prompt variations against the same random starting point? Find the new Seed field in the Ignite Settings panel (⚙ icon on the prompt bar):

  • Leave it blank — every regen is a new random seed (the new default)
  • Type a number — that exact seed + prompt combo reproduces the same image
  • Lock new — generate a fresh random seed you can save for experimentation
  • Clear — go back to fully random regens

The seed is also returned on every generated image so you can copy it and reuse it later.

Improvedignitecompose

Friendlier first-time tips on new features

You'll now see small one-time tooltips the first time you land on key pages, pointing out non-obvious features like the Seed control, the Settings gear, and the Compose chat input. Dismiss with the × or "Got it" — you won't see the same tip twice.

April 16, 2026

Newignitecompose

New pricing: Pro, Max, and Team plans

We simplified pricing around the one thing that actually costs money — AI generation. Everything else is now unlimited on every plan.

Three plans, one simple idea:

  • Pro — $20/mo · 1,000 credits · for solo creators
  • Max — $60/mo · 3,000 credits · for power creators (adds Veo Standard, 4K, Gemini 3 Pro Image, priority queue)
  • Team — $30/seat/mo · 1,200 credits/seat pooled · for agencies (3-seat minimum, team workspace, roles, approvals, shared brand kit)

What's unlimited on every paid plan:

  • Connected social accounts (channels)
  • Media storage
  • Text AI (captions, campaign planning, translation)
  • Scheduled posts

Ran out mid-month? Just buy a top-up pack:

  • Small: 500 credits for $15
  • Medium: 2,000 credits for $45
  • Large: 8,000 credits for $160

Top-up credits don't expire for 12 months. All plans include a 14-day free trial.

Find it in Settings → Billing.

Improvedcomposeignite

Unlimited channels and storage on every plan

Connect as many social accounts as you like — Instagram, X, Facebook, LinkedIn, TikTok, YouTube, Pinterest, Threads — with no caps on any paid plan. Media storage is also unlimited. The only thing we meter is AI image and video generation, because that's the only thing with real variable cost.

April 9, 2026

Newigniteai

Extend your AI videos right from the gallery

Click Extend on any AI video in Ignite to add more footage. A compact panel slides open right below the video with a prompt field, duration picker (2-10 seconds), and live credit estimate. Choose how the video should continue, pick your duration, and hit Extend.

No more popups or dialogs — everything stays in context.

Fixedstudiobugfix

Subtitled videos now appear in your media library

Videos processed with Auto-Subtitle were being saved but not showing up in your media library. This is now fixed — every subtitled video appears in your library immediately after processing, ready to use in posts.

Newstudioai

Karaoke-style subtitles now burn correctly

The Karaoke and TikTok subtitle styles now render their word-by-word color effects when burned into videos. Words fill with color as they are spoken, matching the live preview you see in the editor.

Improvedignitestudio

Play/pause indicator on video player

A brief play/pause icon now flashes when you tap a video, so you always know whether it started or stopped — just like YouTube.

Fixedignitemobilebugfix

Hamburger and notification icons no longer overlap on Ignite

The menu and notification icons from the main layout were covering Ignite's top bar. Both are now built into Ignite's own header — no more overlap on any screen size.

April 7, 2026

Newignitecomposestudio

New video player with full controls

Videos across Multivio now play in a custom dark-themed player with consistent controls on every browser. Includes play/pause, volume, time scrubber, fullscreen, picture-in-picture, and keyboard shortcuts (space, arrows, M, F).

Works in Ignite gallery, Compose chat, media library, and subtitle editor.

Newstudio

Auto-Subtitle page now open to all users

Go to Auto-Subtitle in the sidebar to add captions to any video — upload from your device or pick from your media library. Choose from 5 styles: TikTok, Hormozi, Karaoke, Classic, or Minimal. Subtitles are burned directly into the video, ready to post.

Chinese, Japanese, and Korean subtitles now render correctly.

Newignitecompose

Post to Social from Ignite gallery

Every image and video in your Ignite gallery now has a Post button. Click it to jump straight to Compose with the media attached — ready to write captions and publish to any platform.

Fixedignitebugfix

Fixed broken media thumbnails and video playback

Some project thumbnails and videos appeared broken due to expired URLs. All existing broken links have been repaired, and the system now automatically refreshes expired URLs on load. New uploads are also fixed to prevent this from happening again.

Fixedignitebugfix

Project switching no longer leaves old content behind

Switching between Ignite projects now fully resets all state — reference images, prompts, and settings. Previously, content from the previous project could bleed into the new one.

Newigniteai

Add captions to any video — TikTok, Hormozi, Karaoke styles

Focus any video in Ignite's gallery and click Caption. Your video is transcribed automatically (10x faster with our new Groq Whisper engine), then you pick a subtitle style — TikTok word-highlight, Hormozi impact pop, Karaoke fill, or Classic. Subtitles are burned directly into the video, ready to post.

The captioned video appears as a new turn in your history with a link back to the source.

Newignite

Turn images into Ken Burns slideshow videos

Generate 4 images, then click Slideshow to turn them into a video with smooth Ken Burns zoom/pan effects and crossfade transitions. Set duration per slide (2–10s), choose effects (zoom in, zoom out, pan left/right), optionally add music or voiceover.

Perfect for Instagram carousels-as-video, TikTok product showcases, or YouTube intros.

Performanceaiperformance

10x faster transcription with Groq Whisper

Subtitle generation now uses Groq Whisper — the same Whisper model running on specialized hardware. A 30-second video transcribes in under 5 seconds (was 30–60s). Falls back to OpenAI automatically if needed.

April 6, 2026

Newigniteai

Batch jobs — generate 100s of images at 50% off

Need 50 product images? 200 prompt variations? Now you can submit them all at once and come back in a few hours — paying half price vs real-time generation.

Find it in the sidebar under Account → Batches.

  • Paste up to 1000 prompts (one per line)
  • Watch live progress bars per batch
  • Download results as a grid when complete
  • Works for both image generation and bulk prompt enhancement
Newigniteai

Extend your AI videos with a new prompt

Generated a video you love but need it longer? Focus on any video in Ignite's gallery and click Extend +5s. Type what happens next, and the AI continues the video seamlessly from the last frame.

Perfect for:

  • Turning a 5-second shot into a 10–15 second story
  • Adding a camera move or reveal after the initial scene
  • Iterating on action without regenerating from scratch
Performanceaiperformance

Faster, cheaper AI responses

We've optimized how Multivio talks to AI models. Repeated conversations and similar prompts now respond faster and cost less behind the scenes — savings we pass on to your credit balance.

No action needed — it just works.

April 5, 2026

Newignite

Ignite redesign: track every generation in your project

Ignite now organizes your work as a gallery of turns — every prompt you run creates a card in the history panel with all its outputs. No more losing track of what you generated yesterday (or ten minutes ago).

What's new:

  • Focus preview at the top shows the output you're working on, fit to your screen (no more scrolling 2K images)
  • History thread below shows every turn in reverse-chronological order
  • Lineage chips like built from #3 let you trace how one output led to another
  • Drag the divider to resize focus vs history (double-click resets)
  • Opt-in Studio mode — timeline editor only opens when you explicitly send something to it

Generate 4 images in one turn, pick the best one, upscale it, then turn it into a video — every step is visible and clickable in your history.

Want to see what's
coming next?

Check out our roadmap to see what we're building and what's planned for the future.