Publish anywhere

Write once. Ship to every channel your brand lives on.

One piece of content publishes to Facebook, Instagram (single, carousel, link-back), and your headless CMS per brand per environment. Per-channel publish state, engagement counters, sync log. No copy-pasting across five tools.

Publish panel interface
The problem this solves

Copy-paste publishing is how your brand voice drifts.

A blog post starts in WordPress. Then someone retypes the headline (slightly different) into Buffer for Twitter. Then someone else writes a slightly different version for LinkedIn. Then a third version goes into Instagram. Then the Mailchimp announcement uses yet another phrasing. By the end of the day, the same launch has five subtly inconsistent versions and the analytics tracking is split across five systems.

m18t fixes this by treating publish as a property of the content piece, not a separate workflow. One canonical content row. Multiple channel destinations. The text is the same; per-channel platform requirements (character limits, image dimensions) are handled at push-time, not by retyping.

Per-channel state lives on the same row as the content.

Channels

Where m18t publishes today.

Native

Facebook

Native publishing via Graph API. Single images, multi-image carousels (2-10), link-back posts. Auto page-token exchange. Captions from your content body.

Native

Instagram

Native publishing via Graph API. Single images and carousels with container polling until FINISHED. Carousels (2-10 items) handled correctly.

Adapter

Strapi (headless CMS)

Push per brand per environment (production + staging). Multi-locale handling correct. Rich text converts to Markdown. Cover images upload to media library. Full SEO component populated.

Roadmap

TikTok / X / LinkedIn / Threads

Not native today. If configured, routes through external webhook automation. Native publishing is real engineering work; priority set by where beta users actually publish.

Roadmap

WordPress / Sanity / Contentful / Payload

On request. The adapter pattern exists; each vendor is real work. Tell us which CMS you're on and we'll prioritize.

Adapter

Custom webhook

You can register a custom channel and push to any webhook URL. Useful for internal systems or unsupported platforms.

What you get

Capabilities

One-click multi-channel push

Select channels, click publish. m18t handles per-channel formatting, image upload, character limits where applicable.

Multi-locale aware CMS push

Sibling content rows in different locales push to the right localization endpoint. Strapi v5 i18n handled correctly.

Calendar view across all content

See scheduled and published content across all channels and all brands on a single calendar. Drag-to-reschedule on the roadmap.

Per-channel publish state on every content row

Each content piece tracks its publish status, post ID, and engagement counters per channel.

Full sync log

Every push captured with request payload, response payload, error message (if any), timestamp.

Per-brand × per-environment integrations

Each brand has its own credentials and its own Strapi instance for production AND staging. No cross-contamination.

In context

Publish doesn't live alone.

Pair with Content workspace →

The content piece is the source of truth. Publish is the action you take with it.

Pair with Canvas →

Generate cover and social graphics for the piece before publishing.

Pair with Multi-brand workspace →

Each brand has its own social accounts and CMS instance. Publish respects the brand context.

State today

Where Publish stands.

Solid today

  • — FB + IG native (single, carousel, link-back)
  • — Strapi push per brand per environment
  • — Multi-locale handling for CMS push
  • — Per-channel sync log with full payload
  • — Calendar view across all content

Rough today

  • — Per-platform preview before publishing (FB vs IG vs Strapi)
  • — Per-channel character-limit auto-truncation prompts
  • — Engagement metrics sync cadence is manual or cron

Coming

  • — TikTok, X, LinkedIn, Threads native
  • — WordPress, Sanity, Contentful, Payload adapters (on request)
  • — Scheduled auto-publish on status + due-date

Frequently Asked Questions

Stop the copy-paste publishing dance.