Composing Posts
Create AI-generated content, adapt it for multiple platforms, and attach media.
AI Content Generation
The fastest way to create posts is through the Chat assistant. Describe what you want — a product announcement, a motivational quote, a thread about industry trends — and the AI generates platform-optimized content instantly.
You can also use the Compose page for a more hands-on approach. Choose a format, select your accounts, describe your idea, and click Generate with AI. The AI adapts to the format: for standard posts it generates platform-specific variations, for polls it creates a question and options, for threads it writes a multi-tweet chain, and for short videos it crafts a punchy caption.
All formats support publishing to multiple accounts simultaneously — select as many accounts as you want and publish to all of them at once.
Multi-Platform Posting
Every post in SonetHub targets one or more platforms simultaneously. When you create a post, you choose which platforms to publish to, and the content is automatically adapted:
- Instagram: Full captions with line breaks, emojis, and up to 30 hashtags
- Facebook: Conversational tone with shorter paragraphs
- X / Twitter: Concise, punchy text within 280 characters
- LinkedIn: Professional tone with thought-leadership framing
- Threads: Authentic, conversational style up to 500 characters
- Pinterest: Keyword-rich title (100 characters) and description (500 characters) with destination URL
Each platform version can be edited independently before publishing. For details on what each platform supports (media types, character limits, special content modes), see Connecting Accounts.
Content Modes
The Compose page offers several specialized content modes beyond standard posts:
Threads
Create multi-tweet threads for X/Twitter. Write each tweet in the thread individually, preview the full sequence, and publish them all at once as a connected thread.
Stories
Create Instagram and Facebook stories with image or video. Upload your media, add a caption, and publish it directly as a story that disappears after 24 hours.
Short Video (Reels / TikTok)
Publish short-form vertical video (9:16) to Instagram Reels, Facebook Reels, or TikTok. Upload a video, add a caption, and publish. For TikTok, you can send the video to your inbox as a draft to edit in the app before publishing.
Cover Frame — When publishing to TikTok or Instagram Reels, a cover frame picker appears after uploading your video. Scrub through the filmstrip to choose which frame of the video becomes the thumbnail/cover image. This sets the video_cover_timestamp_ms (TikTok) or thumb_offset (Instagram) automatically.
Documents
Create LinkedIn PDF carousel posts. Upload a multi-page PDF document and pair it with a caption to publish as a swipeable carousel on LinkedIn.
Articles
Create LinkedIn link/article posts. Share a URL with a title and commentary to publish professional article-style content on LinkedIn.
Pinterest Pins
When composing for Pinterest, additional fields are available:
- Title (100 characters) — A concise, keyword-rich headline for your Pin. Separate from the description.
- Description (500 characters) — A longer description with natural keywords (not hashtags) for Pinterest search discovery.
- Board selection (required) — Choose which Pinterest board to pin to. Your boards are loaded from your connected account.
- Destination URL — Pinterest is link-driven. Every Pin can include a clickable link to your website, product page, or blog post.
- Alt text (500 characters) — Accessibility description for the image, also used by Pinterest for search indexing.
Every Pin requires an image or video — text-only Pins are not supported. Multiple images will be published as separate Pins (no native carousel support).
Media Attachments
Attach images and videos to your posts in several ways:
- Upload — Drag and drop or browse files from your device
- AI Image Generation — Describe what you want and the AI creates it (Pro and Business plans). Supports three quality tiers: draft (fast preview), standard (balanced), and high (premium). Enable "Optimize prompt" for best results — the AI enhances your description with style, composition, and lighting details, incorporating your visual style memories.
- AI Video Generation — Generate short video clips (5 or 10 seconds) for Reels, Stories, and TikTok. Three quality tiers: Standard (7 credits, fast), High (35-70 credits, best value), Premium (70-140 credits, best quality). Best practice: generate a hero image first, then animate it with image-to-video — this produces more consistent results than text-to-video. Video generates in the background (30-90 seconds).
- AI Music Generation — Generate royalty-free instrumental background music (5, 10, 15, 30, or 60 seconds) and add it to your videos before publishing. Credits scale with duration (5s=1, 10s=2, 15s=3, 30s=6, 60s=12). Music generates in the background (10-60 seconds depending on duration). Describe the genre, mood, and tempo, then merge it into an attached video with one click. Music is mixed at 30% volume with a fade-out for a professional result.
- Style Transfer — Upload a reference image and generate new images matching its visual style using Flux Kontext.
- Recent Media — Browse and reuse images, videos, and audio from your previous uploads and AI generations. Click the Recent tab in the media section to see your media library.
- Image Search — Search Unsplash for royalty-free stock photos or the web for topical images
When target platforms are selected, the AI automatically suggests the optimal image size or aspect ratio for those platforms.
After attaching media, it's included when the post is published to all selected platforms.
Polls
Create polls from the Compose page (poll mode) or via the AI assistant. Polls are supported on:
- X / Twitter — 2-4 options, duration from 5 minutes to 7 days
- LinkedIn — 2-4 options, duration of 1, 3, 7, or 14 days
- Threads — 2-4 options, duration of 1 to 7 days
Location Tagging (Threads)
Threads posts can be tagged with a location. When composing for Threads, search for a location by name and attach it to your post. This helps your content appear in location-based discovery.
Editing and Drafts
Posts can be saved as drafts for later editing. From the Posts page, filter by status to find your drafts, then edit content, change platforms, update media, or schedule them. You can also ask the AI assistant to edit any existing draft by describing the changes you want.
Editing Published Posts
Already-published posts can be edited on platforms that support it. From the Posts page, open a published post and click Edit on Platform to update the text. This is supported on:
- Facebook — Edit the message text on your Page post
- LinkedIn — Edit the commentary on your LinkedIn post
- X / Twitter — Edit the tweet text (available to Twitter/X users)
You can also ask the AI assistant to edit published posts — for example, "update the text on my latest LinkedIn post."
Retrying Failed Platforms
If a post fails to publish on one or more platforms, you don't have to start over. From the Posts page, open the post to see per-platform status. Each failed platform shows a Retry button to re-attempt publishing on just that platform.
When a post has multiple failed platforms, a Retry All Failed button appears at the top to retry them all at once. After retrying, the overall post status automatically updates based on the combined results across all platforms.
You can also retry from the AI assistant — ask "retry failed platforms on my last post."
Post Comments
View and manage comments on your published posts directly from SonetHub. Open any published post from the Posts page to see its comments section, where you can:
- View comments from all platforms in one place
- Reply to individual comments — your reply is posted on the original platform
- Delete comments you want to remove (hides the reply on platforms like Threads)
The AI assistant can also manage comments — ask "show me the comments on my latest post" or "reply to that comment saying thanks."
Importing Posts from Social Accounts
Already have content on your social accounts? SonetHub can import your existing posts so you can view them alongside your SonetHub-created content.
UI Import
Click the Import button on the Posts page and select a connected platform. SonetHub fetches your recent posts and saves them with an Imported badge. Imported posts are read-only — they appear in the post list and link back to the original on the platform.
AI Import
Ask the AI assistant: "Import my recent Instagram posts" or "Show me my last 10 LinkedIn posts." The assistant uses the fetch_account_posts tool to retrieve your published content. Add import=true to save them to SonetHub.
Brand Style Scanning
One of the most powerful uses of importing is brand analysis. Ask the AI: "Analyze my recent posts and learn my brand style." The assistant will:
- Fetch your recent posts from connected accounts
- Analyze any images for visual style (colors, composition, mood)
- Save brand voice and visual style as memories for future content generation
This means every post the AI creates going forward will match your established brand identity.
Branded Post Templates
Create production-grade visual posts with text overlays on background images — the kind you see on Instagram news accounts and carousel pages. No design skills or Canva required.
How It Works
-
Create a template — Describe the style you want in chat:
- "Create a template with bold white headlines at the bottom, dark gradient overlay, yellow highlights for key words"
- "Make me a quote card template with centered text and a heavy overlay"
- The AI generates a template using your brand colors and fonts from brand memory
-
Render images — Use the template with any content:
- "Render 'Breaking News: AI Changes Everything' with this Unsplash photo as background"
- The AI composites your text onto the image using your template's layout, fonts, and colors
- Returns a ready-to-publish PNG
-
Create carousels — Combine with carousel content generation:
- "Create a 5-slide carousel about productivity tips using my template"
- The AI generates structured slide text, renders each slide with a background image, and produces 5 branded PNGs
Available Layouts
| Layout | Best For | Description |
|---|---|---|
| Bottom Headline | News, facts, carousels | Full background, gradient at bottom, headline at bottom |
| Top Headline | Announcements | Full background, gradient at top, headline at top |
| Split | Educational content | Image top half, solid color bottom half with text |
| Full Overlay | Quotes, bold statements | Full background, heavy overlay, large centered text |
| Minimal Caption | Photo-first posts | Full background, thin strip at bottom with text |
Brand Integration
Templates automatically use your brand colors, fonts, and visual style from brand memory. If you've done brand ingestion (uploaded a logo, website, or style guide), the AI incorporates those settings when generating template configs.
Managing Templates
- "List my templates" — See all saved templates
- "Set my carousel template as default" — Mark one as the default for quick rendering
- "Delete the old quote template" — Remove templates you no longer need
- Template limits: Free (3), Creator (10), Pro (25), Business (100)
Background Images
Each rendered image uses exactly one background image that fills the entire canvas. The background can come from:
- Image search — "Search Unsplash for mountain landscape" then use the URL
- AI generation — "Generate a minimalist gradient background" via generate_image
- Upload — Attach your own photo in the compose page or chat
For carousels, each slide can use a different background image.
Template Configuration Reference
When you create or modify a template, you can control these parameters:
Layout — Choose one of the 6 structural presets (see table above). The layout determines where text, overlay, and logo are positioned. You cannot create custom layouts — pick the closest preset and customize the typography and colors.
Aspect Ratio — 1:1 (1080×1080, Instagram square), 4:5 (1080×1350, Instagram portrait), 9:16 (1080×1920, Stories/Reels), 16:9 (1920×1080, landscape/YouTube).
Overlay — Controls the darkening/coloring layer between the background image and text:
- Type:
gradient(fades from transparent to dark),solid(uniform color), ornone - Color: any CSS color (e.g.,
rgba(0,0,0,0.85),#1a1a2e) - Gradient direction and stops: customizable (e.g., "gradient from top" or "gradient from left")
Headline — The main text:
- Font family: one of 14 available fonts (see below)
- Font size: 12–200px (typical: 48–96 for headlines)
- Font weight: 300 (light) to 900 (black)
- Color: any CSS color
- Text transform: uppercase, lowercase, or none
- Text alignment: left, center, or right
- Line height: 0.5–3.0
Body Text (optional) — Secondary text below the headline, with the same options as headline but typically smaller (18–28px).
Highlight Color — An accent color applied to specific words in the headline. When rendering, you specify which words to highlight (e.g., "highlight the words BOSS and EMERGED") and they appear in this color while the rest uses the headline color.
Logo — Optional brand logo overlay:
- Position: top-left, top-right, top-center, bottom-left, bottom-right, or center-divider (between image and text)
- Size: 16–200px height
- The logo image is pulled from your brand memory (visual_style)
Padding — Space between content and image edges (8–200px, typical: 40–60).
Available Fonts
| Category | Fonts |
|---|---|
| Display / Headlines | Oswald, Bebas Neue, Anton, Playfair Display, Montserrat, Poppins, Raleway |
| Body / Text | DM Sans, Inter, Roboto, Open Sans, Lato, Plus Jakarta Sans, Space Grotesk |
Each font is available in regular (400) and bold (700) weights. Display fonts also have black (900) weight. You cannot upload custom fonts.
Editing Templates
You can modify existing templates through chat:
- "Make the headline bigger" — adjusts fontSize
- "Change the highlight color to red" — updates highlightColor
- "Switch to a full overlay layout" — changes the layout preset
- "Use Montserrat instead of Oswald" — changes the font family
- "Remove the body text" — removes the body configuration
- "Add my logo to the top right" — adds logo with position
Each change regenerates the template preview.
Limitations
- One background image per render — no multi-image collages or side-by-side layouts
- Text only — no icons, shapes, charts, stickers, or decorative elements (use Canva for those)
- No custom fonts — limited to the 14 bundled font families
- No freeform positioning — text placement is determined by the layout preset, not pixel coordinates
- No image editing — the background image is used as-is (no cropping, filtering, or color adjustment)
- Single headline + optional body — no multi-section text layouts or bullet lists
- Logo from brand memory only — cannot specify a different logo per render (use brand ingestion to set your logo)
- No animations or video — renders static PNG images only
- Highlight is word-level — you highlight entire words, not individual characters or partial phrases
Repurposing Content
Turn a single blog post or article into a week of social media content.
From the Compose Page
Select the Repurpose tab, paste a URL, choose your target platforms, and click Generate. SonetHub extracts the article content and uses AI to create multiple distinct posts — each from a different angle (a unique takeaway, statistic, quote, or insight). You can edit each post, remove ones you don't want, and save the rest as drafts or schedule them spread across days.
From the AI Chat
Ask the assistant: "Repurpose this article for Instagram and LinkedIn: https://example.com/blog-post". The AI fetches the content, generates multiple angles, and presents them for your review. You can then ask it to save specific ones as drafts, schedule them, add hashtags, or make edits — all through conversation.
Tags & Campaign Labels
Organize your posts by adding tags — campaign names, themes, projects, or any label that helps you track related content.
Adding Tags
- Compose page: Type a tag name below your content and press Enter or comma. Tags are shown as removable pills. Existing tags appear as autocomplete suggestions.
- Post detail page: Edit tags on any existing post.
- AI chat: Say "create a post about our sale and tag it black-friday" or "add the tag q1-launch to my last post."
Filtering by Tag
- Posts page: Use the tag filter (next to the account filter) to show only posts with specific tags.
- Analytics: Filter post and content performance analytics by tag to measure campaign results.
Tips
- Tags are automatically lowercased and deduplicated — "Black-Friday" and "black-friday" are the same tag.
- Use consistent naming:
product-launch,q1-campaign,weekly-tips— avoid spaces, use hyphens. - Up to 20 tags per post.
- Tags are included in CSV exports.