One studio.
Every brand you run.
The social media studio for people who run many brands — publish to ten networks, collaborate in client-scoped rooms, and turn long video into clips, on a platform you fully own. No per-seat penalties.
No credit card required. Self-hosting is free forever.
From zero to client-approved in minutes
No enterprise sales calls, no training weeks. Set up your studio desk today.
Connect your portfolio
OAuth in, or bring your own developer app keys. Ten networks supported.
Segment your brands
A workspace per client, brand, or side project — assets, inboxes, and access stay separate.
Draft once, tailor everywhere
Write a post once — Antenna reformats it natively for every network.
Approve, queue, measure
Free reviewer seats for client sign-off; growth tracked across the whole roster.
Ten networks.
Native on every one.
No lowest-common-denominator crossposting — every post renders the way its network expects.
More networks are coming soon — the roster keeps growing.
A network only ships after it passes live verification against the real API. Anything unverified stays switched off — never mocked.
Plan weeks of content for every client in one sitting.
A calendar built for people who juggle brand voices — schedule at custom slots, or let Antenna find the hours that perform for each audience.
Draft once — Antenna tailors text, links, and tags per network from one composer, then schedules each version at the time that performs.
Every DM, mention, and comment. Scoped by client.
Stop logging in and out of client accounts — YouTube comments, Instagram DMs, and Mastodon mentions all land on one desk.
One podcast episode.
A week of clips.
Don't pay for a separate clipping tool. Drop in keynotes, podcast episodes, or founder streams — Antenna finds the high-engagement hooks, reframes them to 9:16, and drafts the posts.
▸founder-podcast-ep-14.mp445:12 · 1080p
08:12"Your first five minutes decide everything."
21:05"We deleted six steps from signup."
35:48"Retention isn't a metric. It's a feeling."Reframed visually, captions burned in — you approve, and it queues straight to TikTok, Reels, and Shorts in one flow.
Roster analytics that prove your value.
No more spreadsheet builds the night before a client call — cross-brand charts, normalized growth metrics, exportable reports.
The whole studio, not just a scheduler
Everything a brand runs on lives in the same desk — no tab-hopping between six single-purpose tools. Every card below has its own chapter.
Signals
Live trend detection tuned to each brand — catch the wave while it's still rising.
Automations
Evergreen rotation, RSS auto-drafting, and scheduled actions keep quiet weeks from going silent.
Links
Brand-scoped short links with click tracking that feeds your analytics.
Monitoring
Uptime checks for the sites behind your brands, on the same dashboard.
Alerts
Spikes, drops, and keywords worth waking up for — surfaced, not buried.
SEO & keywords
Track the queries each brand should own, next to the content that targets them.
Reports
Shareable client reports with your studio's name on them — white-label on Agency.
Content engine
A shared library and AI drafts in each brand's voice — powered by your own keys.
Catch the trend while it's still rising.
Signals watches the conversation around each brand and scores what's worth riding — sentiment, classification, and momentum in one feed. Rate what it surfaces, and it tunes itself to your roster.
- ✓Per-brand tuning — scoped to each audience, not a global firehose.
- ✓Sentiment + classification — every signal arrives pre-read, stats attached.
- ✓A feedback loop — your ratings sharpen tomorrow's feed.
The quiet weeks carry themselves.
Evergreen rotation, cron schedules, and an RSS trigger that drafts a post the moment your blog publishes. Every rule shows its run history, so you always know what fired and why.
- ✓RSS → posts — a blog post lands, a scheduled draft appears.
- ✓Evergreen rotation — your best content returns on schedule.
- ✓Run log — every execution recorded, nothing fires silently.
Short links that report back.
Brand-scoped short links with click counts that flow straight into your analytics. Six campaigns, six links — and one honest answer to "did anyone actually click?"
- ✓Per-brand links — every short link carries its brand's colors.
- ✓Click tracking — counts feed the same analytics as your posts.
- ✓One dashboard — every campaign link and destination in one table.
The sites behind the brands, watched.
Uptime checks for every property your brands depend on, on the same desk as the content that points at them. When the shop throws a 503, you hear it from Antenna — not from a client screenshot.
- ✓Per-site uptime — every brand's web properties, checked continuously.
- ✓Incident timeline — outages logged with resolutions, not vibes.
- ✓Next to your alerts — downtime can page the same rules.
Know before the client asks.
Spikes, drops, and keywords worth waking up for — alert rules per brand, with quick presets so the obvious ones take one click. When something fires, you see exactly when and why.
Search health, on the same desk.
A per-brand SEO score with category breakdowns, Core Web Vitals, a live SERP preview, and the structured data your pages actually ship — next to the content that targets those queries.
- ✓Site score — one number per brand, broken down by category.
- ✓Core Web Vitals — the metrics search engines actually grade.
- ✓SERP + JSON-LD preview — see the result page before Google does.
Client-ready proof, on schedule.
Weekly portfolio pulses and brand spotlights, generated and waiting before your Monday call. On the Agency plan they go out white-label — your studio's name on the work.
- ✓Scheduled reports — the weekly pulse builds itself.
- ✓Brand spotlights — a deep-dive when one brand needs the story told.
- ✓White-label on Agency — your logo, your design, your client.
A shared library in every voice.
Themes, tags, and reusable library items with usage counts, so no brand ever starts from a blank page. AI assist drafts in each brand's voice — powered by your own keys, gated by your approvals.
- ✓Shared library — themes and tags with usage counts across the roster.
- ✓Brand-voice drafts — AI assist that writes like the brand, not like AI.
- ✓Your own keys — bring your model; nothing trains on your content.
"Generators come and go. Networks rise and fall. The thing that compounds is your library — every post, clip, and conversation, on a rail you can take anywhere. That's what we're building."Why Antenna exists — and why the whole product is open source.
Purpose-built for multi-brand operators
The brand-first architecture isn't a filter bolted on top — every calendar, inbox, and report is scoped from the ground up.
Agencies
Client rosters under one roof: free reviewer seats for approvals, client rooms scoped to their brands, white-label reports with your name on the work.
SaaS & content studios
Product brand, founder brand, launch brand — organized without cross-brand leaks, with one portfolio view that shows where the compounding is happening.
Independent SMMs
A whole roster solo, no team required. Evergreen automations, RSS auto-drafting, and MCP agents do the work of a full desk.
Let your AI run the studio. Safely.
A full MCP server ships in the box — connect Claude, ChatGPT, or a local model over OAuth and it can drive all 57 tools, from drafting to analytics.
call antenna.search_trends({ brand: "volt-records" })
call antenna.draft_post({ hook: trends[0], voice: "brand" })
call antenna.find_next_slot({ platform: "youtube" })
call antenna.schedule({ at: slot, fanout: true })
→ 4 drafts queued · pending your approval
call antenna.list_inbox({ status: "open", unread: true })
call antenna.draft_reply({ thread: inbox[0], voice: "kelp-co" })
→ 3 unread across 2 brands · reply drafted
→ waiting for you to hit send
call antenna.slice_video({ source: "keynote-q3.mp4" })
call antenna.compose_from_slices({ networks: ["tiktok", "reels", "shorts"] })
→ 3 hooks found · reframed 9:16 · captioned
→ 9 platform drafts, none published without you
call antenna.get_analytics({ compare: "brands", days: 30 })
call antenna.rotate_evergreen({ brand: "acme-studio" })
→ 57 tools · scoped tokens · your approval queue
Bring whichever model you trust — every risky action lands in your approval queue, not on the wire.
Two ways to connect
Same studio, same permissions — pick the rail that fits how you work.
Remote-control from your local AI session
Point Claude Desktop, Claude Code, ChatGPT, or any MCP client at Antenna's built-in MCP server and authorize with OAuth. The agent gets scoped tokens — and every risky action lands in your approval queue.
claude mcp add antenna https://app.antenna.sh/mcp
Or use the REST API
Mint an API key in the portal — Settings → API keys — and drive the same studio from scripts and backends. Everything the app can do, your code can do.
curl -H "Authorization: Bearer an_live_…" https://app.antenna.sh/api/v1/posts
Own your stack. Keep your data.
Tired of platform lock-in? Antenna's core is AGPL-3.0 — the whole product, not a demo tier. Run it on your own box with Docker Compose, bring your own platform credentials, and keep every post, token, and DM archive on hardware you control.
- ✓The whole product — publishing, inbox, slicing, analytics, MCP. No crippled tiers.
- ✓No lock-in — your data lives in your Postgres; export is a pg_dump.
- ✓Migrate freely — move between self-hosted and antenna.sh without losing a scheduled post.
$ git clone https://github.com/antenna-oss/antenna $ cd antenna && cp .env.example .env $ docker compose up -d $ pnpm install && pnpm db:migrate && pnpm dev:all # publishing · inbox · slicing · analytics · MCP # your studio is on air at localhost:3500
Simple pricing. No per-seat penalties.
Unlimited brands, unlimited team members, and free reviewer seats on every paid plan — the whole product in every one. The dials are channels, slicing minutes, and storage.
Solo
billed $90 yearly 2 months free
billed monthly
For a single operator with a fistful of brands.
Everything in Antenna, plus
- ✓10 connected channels
- ✓Video slicing · 30 min/mo
- ✓10 GB media storage
Studio
billed $290 yearly 2 months free
billed monthly
For growing teams and boutique agencies.
Everything in Antenna, plus
- ✓25 connected channels
- ✓Video slicing · 300 min/mo
- ✓50 GB media storage
Agency
billed $790 yearly 2 months free
billed monthly
For full client rosters and white-label work.
Everything in Antenna, plus
- ✓150 connected channels
- ✓Video slicing · 1,000 min/mo
- ✓250 GB media storage
- ✓White-label reports
Annual plans keep the lights on for an independent open-source team — and save you two months.
Start free with 2 channels — no card required. Create your workspace →
Or run it yourself. Unlimited channels, unlimited slicing on your own hardware, white-label included — free forever under AGPL-3.0.
Read the self-host guideSlicing beyond your plan is $0.05 per source-minute. X/Twitter API usage is passed through at cost — we don't mark it up.
Every plan, side by side
The whole product on every tier — hosted or on your own hardware.
| What you get | Solo | Studio | Agency | Self-host |
|---|---|---|---|---|
| Price | $90/yr$9/mo | $290/yr$29/mo | $790/yr$79/mo | Free |
| Connected channels | 10 | 25 | 150 | Unlimited |
| Brands & workspace members | Unlimited | Unlimited | Unlimited | Unlimited |
| Publishing, queue + calendar | ✓ | ✓ | ✓ | ✓ |
| Unified inbox | ✓ | ✓ | ✓ | ✓ |
| Video slicing | 30 min/mo | 300 min/mo | 1,000 min/mo | Unmetered |
| Media storage | 10 GB | 50 GB | 250 GB | Your disk |
| Analytics + reports | ✓ | ✓ | ✓ | ✓ |
| White-label reports | — | — | ✓ | ✓ |
| Approvals + reviewer seats | ✓ | ✓ | ✓ | ✓ |
| Automations, evergreen + RSS | ✓ | ✓ | ✓ | ✓ |
| MCP server + API keys | ✓ | ✓ | ✓ | ✓ |
| Bring-your-own AI keys | ✓ | ✓ | ✓ | ✓ |
| Slicing overage | $0.05/min | $0.05/min | $0.05/min | n/a |
Hosted or self-hosted, it's the same code — your library is yours to take anywhere.
AGPL-3.0 · your Postgres · your keys · export is a pg_dump
Questions, answered plainly
What's the difference between hosted and self-hosted?
Same code, different operator. antenna.sh runs it for you — updates, backups, and platform app credentials included. Self-hosting gives you the whole product free under AGPL-3.0 on your own hardware, with your own platform credentials and no usage caps.
Can I use Antenna for free?
Two ways. Hosted: start with a free workspace and two connected channels — no card required. Self-hosted: the entire product is AGPL-3.0, so you can run it on your own hardware with no caps and no bill.
How does Antenna compare to Hootsuite or Sprout Social?
Legacy suites charge per seat and per channel, so the bill balloons as your roster grows. Antenna's plans include unlimited team members and free reviewer seats, plus a built-in video slicing engine and MCP server the legacy suites don't have — and you can always self-host for $0.
How is Antenna different from Postiz?
Postiz is a solid open-source scheduler. Antenna is built brand-first for people who run many: isolated client rooms with approval queues, a unified cross-brand inbox, a video slicing engine, and a full MCP server for agent control.
Which networks does Antenna publish to?
Bluesky, Mastodon, X/Twitter, LinkedIn, Instagram, Facebook, TikTok, YouTube, Threads, and Pinterest. We're honest about readiness: a network ships only after it passes live verification against the real API — anything that hasn't is switched off, never mocked. Some networks gate hosted publishing behind platform app review; self-hosters can connect their own approved credentials from day one.
Does AI write my posts?
Only if you ask it to, and only with your own keys. Antenna is "the rail AI operates" — it gives your models and agents structured, permissioned access (drafting, transcription, scheduling via MCP), but it never ghostwrites behind your back and never trains on your content.
Is pricing per seat or per workspace?
Per workspace. One subscription covers every brand you run and everyone who works on them — team members are unlimited and reviewer seats are free. The dials that separate plans are channels, slicing minutes, and storage. Headcount is never one of them.
How does annual billing work?
Annual plans are billed upfront for the year and cost ten months' worth — two months free compared to paying monthly. Switch plans, or between monthly and annual, whenever you like; Stripe prorates the difference automatically. For anything billing-related we haven't covered here, write to hello@antenna.sh.
What happens when I hit a plan's limits?
You'll see an upgrade prompt, not a surprise on your invoice. Channel and storage caps ask you to move up a tier (or make room) before adding more. Video slicing is the one metered dial: past your plan's source-minutes it keeps working at $0.05 per source-minute.
How does video slicing billing work?
Each paid plan includes a monthly allowance of source-minutes (the length of the video you upload, not the clips out). Beyond that it's $0.05 per source-minute. Self-hosters run the slicing engine on their own hardware with no metering.
Is my data mine?
Yes. Self-hosted: everything lives in your Postgres and object storage — export is a pg_dump. Hosted: full export any time, and the AGPL license means the platform can never become a black box you're trapped in.
Can clients approve posts before they go out?
Yes — reviewer seats see exactly their brand's queue and nothing else. Posts can require approval before publishing, and white-label reports (Agency plan) keep your studio's name on the work.
Put your studio on air.
Start free with two channels, or clone the repo and own the whole stack tonight.