Recipients and history are written together
The message rows and the history record are committed in one transaction. A campaign cannot exist as messages nobody can account for, or as a history entry describing a send that never happened.
Velvet's fan mass messaging lets agencies run segmented campaigns across an entire roster from a single screen. Target by spend tier, recency or subscription status, attach PPV pricing, and send in each creator's voice, without logging into accounts one by one.
The message rows and the history record are committed in one transaction. A campaign cannot exist as messages nobody can account for, or as a history entry describing a send that never happened.
A send declares who it is from, and Velvet compares that against the access the actor actually holds on that profile. A mismatch is refused, so a campaign cannot claim to be from the creator when a closer pressed the button.
One call can reach five hundred conversations, so it is capped at five sends an hour per actor. Group broadcasts carry their own separate budget of the same size rather than sharing one, because they are a different feature with a different rhythm.
Segments are built from ledger-backed CRM data: lifetime spend, last purchase, active subscription, custom tags. Target high-value fans with premium PPV and win-back segments with a different offer.
Segments are evaluated per creator at send time, so a roster-wide campaign automatically resolves to the right audience under each profile.
Compose once and schedule across selected creators, with per-creator price points, media and copy variants where one message does not fit all.
Role-based access controls who may launch campaigns: managers run sends, closers handle the replies that come back in their assigned chats, creators keep veto over their own profile.
Every campaign stores the filter it ran under, not merely the text it sent. The record distinguishes an audience segment from a tag, from a set of fan groups, from an explicit list of fans, and it keeps whether ungrouped fans were included.
Two different parts of the product write into that one shape, so the history renders a chat broadcast and a fan-group broadcast correctly instead of quietly defaulting an unrecognised send to everyone. A campaign read back in three months describes what it actually did.
When a closer sends, their mass-messaging capability is verified in the same database transaction that inserts the messages, not before it in a separate call. A permission revoked a moment earlier therefore stops the send rather than racing it.
The declared sender type is checked against the access actually resolved for that profile as well. The two together mean a message in a fan’s inbox and the attribution recorded next to it always describe the same event.
Every send feeds attribution: opens into conversations, conversations into PPV purchases, purchases into ledger entries credited to the campaign.
You see revenue per campaign, per segment and per creator, so the next send is targeted with evidence, not instinct.
A send is scoped to one creator profile and to at most five hundred conversations, and the actor is capped at five sends an hour. A roster campaign is therefore several deliberate acts rather than one button with unbounded reach.
No. Conversations belong to a creator profile, and a send addresses conversations. A fan following two of your creators receives a message from each of them, from the profile they actually follow, and never one message signed by both.
They land in the ordinary inbox as conversations, which means they land with whichever closer that conversation is assigned to. Broadcast reach becomes one-to-one work in the same place the rest of the day happens.
Yes. You select the creators, the segment rules resolve per profile, and each fan receives the message from the creator they actually follow. Fan lists are never merged across profiles.
Yes. Campaigns can carry PPV media with per-creator pricing. Unlocks are settled through the wallet ledger and attributed to the campaign automatically.
Replies land in the normal chat inbox, where your closers answer them within their assigned conversations, turning broadcast reach into one-on-one sales.
Up to five hundred conversations, deduplicated first. Beyond that the send is refused rather than truncated, so you always know how many people actually received it.
Up to four thousand characters, and at least one. The length is checked before any recipient work happens.
Only if you grant the mass-messaging capability, which is off in the default closer permission set. When they do send, the capability is re-checked inside the transaction that writes the messages.
Because one call fans out to as many as five hundred conversations. The cap is the guard against a runaway or abusive fan-out, and group broadcasts carry their own independent budget rather than eating into the same one.