# Social Generation

## Social Media Integrations

Connect your social media accounts to publish content directly from Cuppa. Auto-generate platform-optimized posts when articles go live.

***

### Supported Platforms

| Platform        | Posting     | Scheduling | Images | Carousels |
| --------------- | ----------- | ---------- | ------ | --------- |
| **X (Twitter)** | ✅           | ✅          | ✅      | ❌         |
| **LinkedIn**    | ✅           | ✅          | ✅      | ✅         |
| **Instagram**   | ✅           | ✅          | ✅      | ✅         |
| **Facebook**    | ✅           | ✅          | ✅      | ✅         |
| **Threads**     | ✅           | ✅          | ✅      | ❌         |
| **TikTok**      | ✅           | ✅          | ✅      | ❌         |
| **Pinterest**   | ✅           | ✅          | ✅      | ❌         |
| **YouTube**     | ✅           | ✅          | ✅      | ❌         |
| **Bluesky**     | ✅           | ✅          | ✅      | ❌         |
| **Reddit**      | Drafts only | ❌          | ❌      | ❌         |

***

### Platform Format Matrix

| Platform        | Text |     Image    |     Video    | Carousel | Char Limit | Notes                     |
| --------------- | :--: | :----------: | :----------: | :------: | :--------: | ------------------------- |
| Twitter/X       |  Yes |   Optional   |      No      |    No    |     280    | Punchy, concise           |
| LinkedIn        |  Yes |   Optional   |   Optional   |    Yes   |    3,000   | Professional depth        |
| Instagram       |  Yes | **Required** |     Reels    |    Yes   |    2,200   | Always include visual     |
| Facebook        |  Yes |   Optional   |   Optional   |    No    |   63,206   | Longer format OK          |
| TikTok          |  Yes |      No      | **Required** |    No    |    2,200   | Video-only platform       |
| Pinterest       |  Yes | **Required** |      No      |    No    |     500    | Keyword-rich pins         |
| Threads         |  Yes |   Optional   |      No      |    No    |     500    | Conversation starters     |
| Bluesky         |  Yes |   Optional   |      No      |    No    |     300    | Short and direct          |
| Reddit          |  Yes |   Optional   |      No      |    No    |   40,000   | Value-first, no promotion |
| YouTube         |  Yes |      No      | **Required** |    No    |    5,000   | Community posts or Shorts |
| Telegram        |  Yes |   Optional   |      No      |    No    |    4,096   | Channel-style messages    |
| Google Business |  Yes |   Optional   |      No      |    No    |    1,500   | Local business updates    |

#### Content Format Decision Tree

* **Text only?** Works on: Twitter, LinkedIn, Facebook, Threads, Bluesky, Reddit, Telegram, Google Business
* **Need video?** Use: TikTok, YouTube, Instagram Reels, LinkedIn, Facebook
* **Carousel?** Use: LinkedIn, Instagram
* **Image required?** Instagram and Pinterest always need an image. TikTok and YouTube always need video.

#### CLI Format Guidance

The CLI warns you when format and platform don't match:

```bash
# This will show a warning:
cuppa social multi --platforms tiktok --article-title "Tips" --article-summary "..."
# ⚠ tiktok performs best with video content. Consider using 'cuppa video create' for tiktok.

# For TikTok, use the video workflow:
cuppa video script --brief "Pet grooming tips" --video-format tutorial_howto --platform tiktok
cuppa video create --prompt "..." --model minimax-video-01 --aspect-ratio 9:16
cuppa social share-video --video-id <id> --platform tiktok --content "Check this out!"
```

***

### Connecting Your Accounts

#### Step 1: Navigate to Integrations

1. Go to **Site Settings** → **Integrations**
2. Find **Social Connections** section

#### Step 2: Connect a Platform

1. Click **Connect** on your platform
2. Sign in with your social account
3. Authorize Cuppa to post on your behalf
4. For LinkedIn/Facebook: Select the page or profile to connect

#### Step 3: Verify Connection

Once connected, you'll see:

* Account name and profile picture
* Connection status (✅ Connected)
* Option to disconnect

***

### Platform-Specific Setup

#### X (Twitter)

1. Click **Connect** on X/Twitter
2. Authorize the app
3. Your personal account or connected account is ready

#### LinkedIn

LinkedIn can connect to:

* **Personal profile** — Post as yourself
* **Company page** — Post as your business

1. Click **Connect** on LinkedIn
2. Sign in to LinkedIn
3. **Select organization** if posting to a company page
4. Authorize Cuppa

#### Instagram

Instagram connects via Facebook Business:

1. Ensure your Instagram is a **Business** or **Creator** account
2. Link Instagram to a **Facebook Page**
3. Click **Connect** on Instagram in Cuppa
4. Authorize via Facebook
5. Select your Instagram account

#### Facebook

1. Click **Connect** on Facebook
2. Select the **Page** you want to post to
3. Authorize Cuppa

#### Reddit

Reddit works differently — we generate **drafts only**:

1. Enable Reddit in **Content Strategy** → **Social Settings**
2. No OAuth connection needed
3. Drafts appear in your Reddit Drafts section
4. Copy and post manually to your preferred subreddits

> **Why drafts only?** Reddit bans accounts that appear promotional. Manual posting lets you customize for each subreddit and protect your reputation.

***

### Auto-Posting Setup

#### Enable Social Automation

1. Go to **Content Strategy** → **Social Settings**
2. Toggle **"Auto-generate social posts from articles"**
3. Select default platforms
4. Configure settings:

| Setting               | Description                         |
| --------------------- | ----------------------------------- |
| **Default platforms** | Which platforms get posts           |
| **Tone**              | Professional, casual, playful, etc. |
| **Include CTA**       | Add call-to-action                  |
| **Include hashtags**  | Note: Outdated on X/LinkedIn        |
| **Image model**       | Nano Banana Pro recommended         |

#### How It Works

1. You publish an article
2. Cuppa generates platform-optimized posts
3. AI creates matching images (if enabled)
4. Posts go to your queue for review
5. Approve to publish, or edit first

***

### Creating Social Posts

#### From an Article

1. Open any article
2. Click **Generate Social Posts**
3. Select platforms
4. Review and edit generated content
5. Schedule or publish

#### Standalone Posts

1. Go to **Create Content** → **Social**
2. Enter your topic or content
3. Select platforms
4. Generate and publish

#### LinkedIn Carousels

Create multi-slide lead magnets:

1. Go to **Create Content** → **LinkedIn Carousel**
2. Enter your topic
3. Configure slides (5-10 recommended)
4. Generate carousel
5. Each slide gets AI-generated visuals
6. Publish directly to LinkedIn

***

### Image Generation

#### Default Model

**Nano Banana Pro** 🍌 is the default for social images:

* High quality, fast generation
* Optimized for social dimensions
* \~$0.15 per image

#### Platform Dimensions

| Platform  | Aspect Ratio | Use        |
| --------- | ------------ | ---------- |
| X/Twitter | 16:9         | Feed posts |
| LinkedIn  | 1.91:1       | Feed posts |
| Instagram | 1:1 or 4:5   | Feed posts |
| Facebook  | 1.91:1       | Feed posts |
| Pinterest | 2:3          | Pins       |

Cuppa automatically generates images in the right dimensions for each platform.

***

### Best Practices

#### Platform Voice

Each platform has different expectations:

| Platform      | Best Approach                           |
| ------------- | --------------------------------------- |
| **X**         | Punchy, conversational, thread-friendly |
| **LinkedIn**  | Professional, thought leadership        |
| **Instagram** | Visual-first, lifestyle                 |
| **Facebook**  | Community-focused, shareable            |
| **Reddit**    | Value-first, not promotional            |

#### Posting Frequency

Don't over-post. Recommended maximums:

| Platform  | Frequency   |
| --------- | ----------- |
| X         | 3-5 per day |
| LinkedIn  | 1-2 per day |
| Instagram | 1-2 per day |
| Facebook  | 1-2 per day |

#### Hashtag Strategy

Modern best practices:

* **X/Twitter** — Hashtags reduce engagement. Skip them.
* **LinkedIn** — Hashtags are outdated. Skip them.
* **Instagram** — 3-5 relevant hashtags still work
* **TikTok** — 3-5 trending hashtags

Cuppa follows these guidelines by default.

***

### Troubleshooting

#### "Connection failed"

* Try disconnecting and reconnecting
* Ensure you have admin access (for pages)
* Check the platform isn't experiencing outages

#### "Post failed to publish"

* Verify account is still connected
* Check for platform-specific restrictions
* Ensure image meets platform requirements

#### "LinkedIn organization not found"

* You need admin access to the company page
* Try reconnecting and selecting the organization

#### "Instagram connection issues"

* Instagram must be a Business/Creator account
* Must be linked to a Facebook Page
* Reconnect via Facebook integration

***

### FAQ

**Can I schedule posts for later?**

Yes! Select a date/time when publishing instead of "Post Now."

**Can I post to multiple platforms at once?**

Yes. Select multiple platforms and Cuppa generates optimized content for each.

**Do I need separate accounts for each brand?**

Each Cuppa site can connect to one set of social accounts. For multiple brands, create separate sites.

**Can I edit posts before they go live?**

Yes. Auto-generated posts go to a queue. Review and edit before approving.

**What about LinkedIn articles vs posts?**

Currently, Cuppa creates LinkedIn posts. LinkedIn articles (newsletters) are in development.

**Why can't I auto-post to Reddit?**

Reddit heavily penalizes promotional content. We generate drafts so you can customize for each subreddit and maintain authenticity.

***

### API & Agent Access

All social features are available programmatically via the REST API, MCP server, and CLI.

#### Social Analytics

```
GET /v1/social/analytics?site_id=xxx&platform=linkedin&from_date=2026-01-01
```

Returns impressions, engagements, clicks, per-platform breakdown, and top posts.

MCP tool: `get_social_analytics`

#### Standalone Social Generation

Generate posts from any topic without needing an article:

```json
POST /v1/social
{
  "site_id": "...",
  "topic": "Why AI agents are the future of content marketing",
  "platform": "linkedin",
  "tone": "professional",
  "hook_type": "contrarian"
}
```

MCP tools: `generate_social`, `generate_social_multi`

#### Post Management

| Endpoint                   | MCP Tool               | Description               |
| -------------------------- | ---------------------- | ------------------------- |
| `GET /v1/social/posts`     | `list_social_posts`    | List posts with analytics |
| `POST /v1/social/publish`  | `publish_social`       | Publish immediately       |
| `POST /v1/social/schedule` | `schedule_social`      | Schedule for later        |
| `GET /v1/social/analytics` | `get_social_analytics` | Performance metrics       |

See Agent Brand Engineering for full workflow examples.

***

### Related Docs

* Content Planner — Social automation settings

> **Doc paths:** Planner content also exists at `/learn/automations/content-planner` (legacy URL with an extra “s”). Both pages are kept so old links keep working; prefer `/learn/automation/content-planner` for new links.

* Agent Brand Engineering — AI agent workflows
* Replicate API — Image generation setup
* LinkedIn Carousels — Multi-slide content


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.cuppa.ai/creative-studio/social-generation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
