Skip to content
Bloom · Social publishing

One plan. Eighteen networks.

Bloom is a social publishing workspace that plans, approves, schedules and publishes to 18 networks — and every one of those 18 can actually post. It runs on its own application at bloom.autocloz.com with its own sign-in, so an Autocloz CRM account is not required. What separates it from a scheduler is both ends of the job: a four-state approval chain in front of publishing, and built-in short-link attribution behind it that carries a single post through to a click, a conversion and a named lead.
The Bloom loop in five stages: plan, approve through four states, queue per brand with a per-account rate governor, publish to eighteen networks, and measure on the ten that report engagement — feeding a twenty-four-arm learner. Below, a short link carries the post through click events, conversions and leads into a white-label report.
Five stages, one loop. The dashed return is the part most schedulers do not have.
01 · Who it is for

Four ways teams run Bloom.

Bloom is built around a workspace that holds brands, and brands that hold connected accounts. That one structural choice is what makes the same product work for a two-person startup and a fifteen-client agency without either of them feeling like they are using the other’s tool.

Agencies with client brands

Every client is a brand inside one organisation. Member access is granted per connected account, so a freelancer hired for one client never sees another client’s inbox or analytics. The approval chain has a dedicated client_review state, which turns sign-off into a recorded step with a timestamp instead of an email thread nobody can find six weeks later. Reports go out white-labelled.

In-house social teams

One brand, many networks, and a weekly queue that belongs to the brand rather than to any single account. An editor drafts, an admin approves, and the schedule fills itself from the slots you set once. When a network fails, the post retries on a backoff rather than vanishing, and the failure is a visible state rather than a gap in the calendar you notice on Monday.

Founders and solo operators

The fediverse nine — Mastodon, Bluesky, Nostr, Lemmy, Mbin, Misskey, Plurk, Tumblr and dev.to — are supported by no mainstream scheduler, so a founder posting there competes with almost no other scheduled content. Bloom publishes to all nine, plus the mainstream networks, from the same compose box.

Developer relations and community

dev.to returns a canonical URL so a cross-post does not compete with your own site. Lemmy and Mbin take title-first link-aggregator posts. Nostr events are signed in-house with BIP-340 Schnorr signatures verified three ways against the official test vectors, so no third-party signer ever holds your key.

02 · Plan once, publish everywhere

One idea, tailored per network.

Character limits across these platforms differ by an order of magnitude — 280 on X, 300 on Bluesky, 360 on Plurk, 4,096 on Telegram. Posting one identical string everywhere means the shortest platform cuts it off mid-sentence, so Bloom tailors the same idea per network and blocks anything that cannot fit before it is stored.

Compose — one idea4 of 5 ready
NorthwindProduct launchTue 09:30
Instagram · carousel of 6ready
LinkedIn · image postready
Mastodon · thread of 3ready
X · 280 charactersyou wrote 340
Bluesky · 300 charactersready
Preflight blocks it before it is stored — never truncated silently.

Every network publishes

There is no tier in Bloom that connects an account but cannot send to it. All 18 platforms have a real publisher registered, which is unusual enough that it is worth checking against any tool you compare it with. Nine networks connect with one-click OAuth and nine take a pasted credential — the split is about what each platform offers, not about how well Bloom supports it. The full table lives on the networks page.

Drafting is bring-your-own-key

Bloom can generate captions, hooks and variants, but only with your own AI key. Four providers are supported — Groq, OpenAI, Anthropic Claude through its native Messages API, and Ollama running on your own machine — and a key is verified before it is saved. Without one, caption generation returns an error instead of quietly producing nothing. You pay the model provider directly.

18
Networks that publish
Every platform Bloom supports has a real publisher.
10
Report engagement
The rest carry a written reason instead of a zero.
7
Return conversations
Five of those carry real direct messages.
2
Networks Bloom can like from
Mastodon and Bluesky. Every other refusal is explained.
03 · Multi-brand by construction

Brands, roles and the approval chain.

Multi-tenancy in Bloom is not a plan upgrade. An organisation holds brands, a brand holds connected accounts, and a member’s access is granted per connected account — which is the only granularity that actually works when one freelancer is on two clients and neither client should know about the other.

StateWhat it meansWhy it exists
draftBeing writtenThe post exists, has a target set and can be edited freely.
internal_reviewYour team looksThe stage where an editor's work reaches an admin.
client_reviewThe client looksA client seat can be given access to exactly this.
approvedThe end of the chainThe state a post carries once sign-off is recorded.
Four states, in that order. The chain is why an agency can hand a client a seat without handing them the publish button, and why “did they approve it?” has an answer that is not somebody’s memory of a Slack message.

Five roles, eight actions

Owner, admin, editor, client and viewer, each checked against eight distinct actions rather than a single admin flag. A viewer can be given a real seat and see real numbers without being able to change a schedule, which matters the moment a client asks for a login.

Credentials encrypted at rest

Connected-account credentials are stored under AES-256-GCM with a scrypt-derived key. Disconnecting an account from inside Bloom removes its connection. A Meta deauthorization is handled separately and disables the connection rather than erasing it, which is the honest description of what that webhook does.

A shared inbox, scoped like everything else

Seven networks return conversations into one inbox — Instagram, Facebook, Threads, LinkedIn, Mastodon, Bluesky and Telegram — and five of those carry real direct messages. Threads and LinkedIn are comments only, because Threads publishes no messages API and LinkedIn’s is partner-only. Items are tied to the connected account they arrived on.

04 · Scheduling that protects the account

A queue built to not get you suspended.

The weekly queue belongs to the brand: every slot is keyed by brand, platform, weekday, hour and minute, so one schedule drives every network that brand posts to. The rate limiting is deliberately somewhere else — a governor in front of each connected account, because that is the unit a platform actually polices.

Queue health — NorthwindRunway 9d
Runway9 days · healthy
Slots filled this week14 of 24
Daily budget used · @northwind2 of 5
Tick every 5 min

Runway, before it runs out

Bloom watches how far ahead the queue is actually filled and flags a brand as low under seven days and critical under three, so the calendar going empty is a warning you get in advance rather than a silence you notice afterwards.

Failures retry, then stop

A failing target is retried up to five times with backoff starting at 60 seconds and doubling under a six-hour ceiling. A post more than 24 hours stale is skipped rather than published late, and a publish that gets stuck is reaped after 15 minutes. The full set of numbers, and why each one is what it is, is on the publishing page.

05 · The closed loop

It learns which posts actually worked.

A recommendation engine that needs four years of data to say anything useful is a feature nobody ever benefits from. Bloom’s learner is factored rather than exhaustive: 12 hooks, 6 formats and 6 time buckets are tracked as 24 arms instead of 432 combinations, which is what makes it informative in roughly a hundred posts.

24 arms, not 432

Every published post updates the hook it used, the format it used and the time bucket it landed in, independently. Because the three factors share evidence rather than each combination having to earn its own, the model reaches useful confidence in about a hundred posts — the difference between a tool that learns during your engagement and one that would need roughly four years.

It keeps exploring

An exploration floor keeps a share of posts on options the model has not yet convinced itself about, and an arm is not trusted until it has a real minimum number of trials behind it. Both exist to stop the loop collapsing onto whatever happened to work in week one and never trying anything else again.

Scored on what matters

The performance score is weighted deliberately — a click counts five times a like, a repost three times, a reply twice, and a view a tenth. Reach that never produced an action is visible but does not dominate, so the learner optimises toward the behaviour a business can act on.

Honest about its own coverage

The loop only closes on the 10 networks that report engagement back. On the other eight, Bloom shows the reason rather than an implied zero — a post to Pinterest is not a post that failed, it is a post whose numbers the platform will not release without app review.

06 · Click to lead

Attribution that survives the click.

Most social tools stop at the platform’s own numbers, which end the moment someone leaves the app. Bloom’s short links are part of the product rather than a bolt-on, so the chain from a post to a lead is one dataset instead of three tools and a spreadsheet.

Short codes designed to be read aloud

Eight-character codes drawn from a 32-character alphabet with the ambiguous glyphs removed, so a link read off a slide or typed from a podcast mention does not land on somebody else’s destination.

UTM tagging per platform, automatically

Each network gets its own campaign parameters without anyone hand-editing a query string, which is where cross-channel reporting usually breaks. Clicks are classified as bot, mobile or desktop, so an automated crawler hitting the link does not inflate a client’s numbers.

Attribution — last 30 days61 conversions
Clicks
1,284
Human
932
Leads
24
mastodon · /l/k4t9xzLaunch thread · 2m ago+7
linkedin · /l/p2wq8bCase study post · 14m ago+4
bluesky · /l/z7nn31Reply quote · 1h ago+2
Illustrative figures. Your own numbers come from your own accounts.
07 · The refusals

What Bloom does not do.

A tool that overstates its coverage costs you the week you discover the gap. These are the limits as they stand today, stated here rather than in a support ticket later.

No TikTok, no Instagram Stories

Bloom has no TikTok adapter and no Stories code path, and this page will say so until it does. Video publishing works on Instagram Reels and YouTube Shorts; Bloom cannot upload video to Facebook or LinkedIn and refuses the attachment rather than accepting it and failing hours later.

X is metered, and read access is paid

X’s v2 API charges per post and stops when the balance reaches zero, which Bloom handles as a real state rather than a mystery failure. Because read access is also paid, there are no X analytics and no X inbox — that is a platform decision, not an omission.

No cold or unsolicited DMs

Bloom’s inbox replies to conversations that already exist. Unsolicited outbound DM campaigns are not available on any of these platform APIs, and Bloom does not pretend otherwise. If outbound is what you need, that is the Autocloz CRM’sjob, not Bloom’s.

Inbox items sit with their account

A conversation arrives against the connected account it came in on. Bloom does not claim to stitch every comment back onto the specific scheduled post that caused it, because the platforms do not hand that relationship over reliably enough to promise it.

08 · Questions

Bloom, answered plainly.

What is Bloom?

Bloom is a social media publishing workspace. It plans, drafts, routes for approval, schedules and publishes posts to 18 networks — Instagram, Facebook Pages, Threads, LinkedIn, X, Pinterest, YouTube Shorts, Reddit, Telegram, Tumblr, dev.to, Mastodon, Bluesky, Nostr, Lemmy, Mbin, Misskey and Plurk — then reads engagement back from the ten of those whose APIs report it, and attributes clicks through to conversions and leads with its own short links.

Do I need an Autocloz CRM account to use Bloom?

No. Bloom runs on its own application at bloom.autocloz.com with its own sign-in. It is part of the Autocloz family and shares the company behind it, but you create a Bloom workspace directly and never touch the CRM if you do not want to.

Can Bloom write my captions with AI?

Yes, but it is bring-your-own-key. Bloom supports four providers — Groq, OpenAI, Anthropic Claude through its native Messages API, and Ollama running locally — and it verifies a key before saving it. Without a key on the workspace, caption generation returns a 409 rather than silently producing nothing. You pay your model provider directly and the drafts stay yours.

How does Bloom keep an account from being rate-limited or suspended?

Two mechanisms. A rate governor sits in front of each connected account with its own maxPerDay and minIntervalMinutes, so two accounts on the same network never share one budget. And after an outage Bloom releases at most ten catch-up posts per five-minute tick, because dumping forty queued posts the moment a worker comes back is exactly the burst pattern platforms suspend accounts for.

Can an agency give a client their own login?

Yes. A Bloom organisation contains brands, and a member's access is granted per connected account, so a client seat can be scoped to the accounts that belong to that client. There are five workspace roles — owner, admin, editor, client and viewer — checked against eight distinct actions, and the approval chain has a client_review state so sign-off is a recorded step rather than an email thread.

Which networks does Bloom read engagement from?

Ten of the eighteen: Mastodon, Bluesky, dev.to, YouTube, Lemmy, Misskey, LinkedIn, Instagram, Threads and Facebook. The other eight are not shown as a silent zero — Bloom states the reason. X read access is paid, Telegram's Bot API exposes no view counts, Pinterest sits behind app review, Reddit needs its own OAuth app, and Nostr needs relay subscriptions rather than a request.

Publish once. Reach all eighteen.

Bloom runs on its own application and its own sign-in — an Autocloz account is not required. Connect one network or all eighteen, set a weekly queue for your first brand, and watch the loop close against your own accounts.

Create your workspaceTalk to us
Bloom

Plan a campaign once and let Bloom publish it across every network you own — on schedule, at the times each audience actually shows up.