---
name: "Marketing"
repo: https://github.com/fal-ai-community/skills
source: https://github.com/fal-ai-community/skills/blob/HEAD/skills/marketing/SKILL.md
license: not specified
install: "npx skills add fal-ai-community/skills --skill marketing"
page: https://100xlab.com/resources/agent-skills/fal-ai-community-skills--marketing--1hiqej8
---

# Marketing production with genmedia

Use this skill when the user wants a campaign system, not one isolated asset.
Load references as needed:

- `references/campaign-patterns.md`
- `references/workflows.md`
- `references/examples.md`

Load `model-routing` alongside this skill for default endpoint choices.

Marketing output should be executable: a brief, asset matrix, genmedia command
plan, downloaded files, and clear defects. Do not add fake claims, fake social
proof, fake partner logos, fake award badges, or invented legal copy.

## Inputs to collect

Only ask when missing details would change the asset plan.

- Objective: launch, acquisition, retargeting, activation, education, event.
- Audience: persona, market, use case, awareness level, objections.
- Offer: product, feature, bundle, trial, waitlist, event, promotion.
- Channels: paid social, organic social, landing page, email, display, app.
- Required assets: stills, video, thumbnails, hero image, carousel, banner.
- Brand rules: colors, logo use, typography, tone, taboo visuals, competitors.
- Source media: product images, screenshots, app UI, people, logo, prior ads.
- Claims: exact approved copy, proof points, disclaimers, compliance limits.
- Budget preference: final-quality, draft exploration, or mixed pipeline.

## Genmedia workflow

1. Start from routed endpoint IDs.

   ```bash
   genmedia models --endpoint_id openai/gpt-image-2 --json
   genmedia models --endpoint_id fal-ai/nano-banana-pro/edit --json
   genmedia models --endpoint_id fal-ai/nano-banana-2 --json
   genmedia models --endpoint_id bytedance/seedance-2.0/image-to-video --json
   genmedia models --endpoint_id bytedance/seedance-2.0/text-to-video --json
   genmedia models --endpoint_id veed/fabric-1.0 --json
   ```

   Use text search only as fallback discovery for a missing channel role:

   ```bash
   genmedia models "marketing banner image typography" --json
   genmedia models "social ad video product campaign" --json
   genmedia docs "image generation text rendering" --json
   ```

2. Inspect the selected endpoint before planning exact payloads.

   ```bash
   genmedia schema <endpoint_id> --json
   genmedia pricing <endpoint_id> --json
   ```

3. Upload all source media.

   ```bash
   genmedia upload ./product.png --json
   genmedia upload ./logo.svg --json
   genmedia upload ./screenshot.png --json
   genmedia upload ./creator.jpg --json
   ```

4. Build the campaign matrix before generating.

   Minimum matrix:

   - Hook asset: earns attention in the first frame.
   - Proof asset: shows product, result, process, feature, or evidence.
   - Context asset: places product in audience use case.
   - Conversion asset: clean end frame with safe space for external copy.

5. Run still assets synchronously when quick.

   ```bash
   genmedia run <endpoint_id> \
     --prompt "<marketing asset prompt>" \
     --download "./outputs/marketing/{request_id}_{index}.{ext}" \
     --json
   ```

6. Run video assets async and download from status.

   ```bash
   genmedia run <endpoint_id> \
     --prompt "<campaign video prompt>" \
     --async \
     --json

   genmedia status <endpoint_id> <request_id> \
     --download "./outputs/marketing/{request_id}_{index}.{ext}" \
     --json
   ```

7. Use schema fields exactly. Do not pass guessed flags. Mirror names such as
   `image_urls`, `image_url`, `reference_image_url`, `aspect_ratio`,
   `duration`, `quality`, `seed`, `prompt`, or `negative_prompt`.

## Brief build order

Build the campaign brief before prompts:

1. Product truth: what the product is and what must stay accurate.
2. Audience tension: problem, desire, objection, or trigger moment.
3. Campaign promise: user-approved benefit or visible outcome.
4. Asset roles: hook, proof, context, conversion, retention, reminder.
5. Channel specs: crop, runtime, safe zones, text needs, file count.
6. Variation axis: audience, setting, proof point, visual metaphor, offer.
7. Guardrails: claims, logo, legal, copy, product fidelity, banned imagery.

## Prompt build order

Write every asset prompt in this order:

1. Asset role and channel: launch hero, Meta ad, TikTok hook, email header.
2. Product or subject invariant: exact product, UI, feature, person, logo rule.
3. Audience context: where, who, problem state, usage moment.
4. Visual system: camera, lighting, color, composition, texture, motion.
5. Copy handling: no generated text, safe space, or exact provided wording.
6. Variant axis: what differs from the other assets.
7. Guardrails: no fake claims, no extra logos, no distorted product or UI.

## Model routing

- Text-heavy campaign key art, posters, landing heroes, app/UI visuals, and
  ads with exact copy: `openai/gpt-image-2` at `quality=high`.
- Premium product or brand stills: `openai/gpt-image-2`, then
  `fal-ai/nano-banana-pro`, then `fal-ai/nano-banana-2`.
- Edits from source assets: `fal-ai/nano-banana-pro/edit`, then
  `openai/gpt-image-2/edit`, then
  `fal-ai/bytedance/seedream/v5/lite/edit`.
- Fast visual exploration: `fal-ai/flux-2/klein/9b`.
- Product reveal or social video: `bytedance/seedance-2.0/image-to-video`.
- Text-to-video concept or brand film: `bytedance/seedance-2.0/text-to-video`.
- Creator or spokesperson ad: load `ugc` and use `veed/fabric-1.0`,
  `veed/fabric-1.0/text`, or `fal-ai/creatify/aurora`.
- Multi-shot narrative: load `storytelling`.
- Single polished product asset: load `commercial`.

## Quality bar

Before returning:

- Every asset maps to a campaign role and channel.
- Product, UI, logo, and packaging are stable.
- Claims are user-supplied, observable, or removed.
- Text is either exact and schema-supported or reserved for external editing.
- Variants differ by one clear axis, not random style drift.
- Safe zones support overlays, cropping, and platform UI.
- Output paths come from `downloaded_files[]`.
- The final answer includes a campaign manifest: asset role, endpoint, request
  id, local path, prompt summary, and defects.

If the campaign feels generic, reduce the asset count and make each role more
specific before generating more variants.

---

## Supporting file: references/campaign-patterns.md

# Marketing campaign patterns

Use these patterns to turn a request into an asset matrix before generating.

## Hook, proof, context, conversion

The default paid-social set.

| Role | Purpose | Asset shape |
| --- | --- | --- |
| Hook | Stop the scroll | bold first frame, problem image, surprising product detail |
| Proof | Make it believable | demo, process, feature, result, screenshot, texture |
| Context | Make it relevant | audience situation, lifestyle, workflow, environment |
| Conversion | Make action easy | clean final frame with safe space for external CTA |

## Awareness ladder

Match the asset to audience awareness.

| Audience state | Angle |
| --- | --- |
| Unaware | name the problem visually, no heavy product detail |
| Problem-aware | show the frustrating moment and consequence |
| Solution-aware | compare approach, workflow, or category alternatives |
| Product-aware | show product detail, feature, proof, or demo |
| Ready to act | clean offer frame, user-supplied CTA space |

## Channel matrix

| Channel | Useful deliverables |
| --- | --- |
| TikTok/Reels/Shorts | 9:16 hook video, creator variant, product b-roll |
| Meta paid social | 1:1 and 4:5 stills, 9:16 video, retargeting proof |
| Landing page | hero image, product detail, comparison visual, feature cards |
| Email | header image, product still, feature/detail graphic |
| Display | wide banner safe zones, simple product and benefit visual |
| App store/Product page | clean screenshots, feature visualization, icon-safe crops |

## Variation axes

Vary one axis at a time.

- Audience: beginner, expert, buyer, operator, creator, founder.
- Problem: time, cost, complexity, trust, quality, status, risk.
- Proof: demo, screenshot, texture, testimonial, process, comparison.
- Setting: desk, bathroom, kitchen, gym, store, studio, outdoor, event.
- Tone: direct, expert, warm, premium, playful, practical, urgent.
- Format: still, video, creator, carousel, before-after, product detail.

## Claim discipline

Never invent:

- review quotes
- user counts
- revenue or conversion numbers
- clinical, financial, legal, safety, or performance claims
- partner logos, award badges, app store ratings, press logos

When claims are missing, use observable language: "shows the workflow",
"cleaner setup", "fewer steps on screen", "product texture visible".

---

## Supporting file: references/examples.md

# Marketing examples

Adapt these examples to the user's real product, brand rules, files, and
selected model schema.

## SaaS launch kit

| Role | Prompt summary |
| --- | --- |
| Hook | busy founder desk with too many disconnected app windows, no readable fake UI, 9:16 crop |
| Proof | clean laptop showing abstract workflow dashboard, exact supplied screenshot if available |
| Context | operator reviewing a simplified workflow in a calm office setting |
| Conversion | laptop and product mark area with empty safe space on right for external CTA |

## Fitness product paid social

```text
4:5 paid social still for a compact black recovery device, product unchanged
from uploaded reference, athlete's hand places it beside a gym towel and water
bottle, crisp side light, high contrast but natural, large clean space in upper
third for external headline, no generated text, no performance claims
```

## Beauty email header

```text
wide email header image, uploaded moisturizer jar centered on pale stone,
soft morning light, subtle water texture in background, premium but natural,
product label unchanged, no extra objects blocking packaging, no text, clean
negative space on left for email headline
```

## App feature visual

```text
landing-page hero visual for a productivity app, supplied screenshot placed
inside a clean laptop mockup, organized desk, daylight, realistic scale,
abstract UI details only if no screenshot is supplied, no fake readable text,
calm modern workflow mood
```

## Campaign manifest shape

| Asset | Channel | Endpoint | Notes |
| --- | --- | --- | --- |
| Hook video | Reels/TikTok | `bytedance/seedance-2.0/image-to-video` | product visible in first second |
| Proof still | Meta 4:5 | `openai/gpt-image-2` | safe zone for external copy |
| Creator ad | TikTok 9:16 | `veed/fabric-1.0` | uses approved portrait and script |
| Conversion frame | landing/social | `fal-ai/nano-banana-pro/edit` | product and CTA area clean |

---

## Supporting file: references/workflows.md

# Marketing workflows

## Campaign asset set

1. Write a one-paragraph brief.
2. Build an asset matrix with role, channel, crop, endpoint, source media, and
   variation axis.
3. Generate the minimum complete set: hook, proof, context, conversion.
4. Inspect outputs before expanding variants.
5. Return a manifest with local paths and defects.

## Launch kit

Use when the user needs broad go-to-market visuals.

1. Create one hero still.
2. Create one product or feature detail.
3. Create one social hook video or motion reveal.
4. Create one clean conversion/end frame.
5. Optional: create one UGC creator variant through the `ugc` skill.

## Paid social variant test

1. Keep product, offer, and crop constant.
2. Generate 3-5 variants that differ by hook angle only.
3. Use exact output naming with `{request_id}_{index}`.
4. Score each output for thumb-stop, product clarity, claim safety, and crop.
5. Do not mix model changes and concept changes in the same test unless the
   user specifically wants a model shootout.

## Landing-page visual system

1. Define hero, proof, feature, and conversion sections.
2. Generate visuals with consistent palette, lighting, and product treatment.
3. Leave text and UI copy for the frontend unless the model is explicitly
   selected for text rendering.
4. Return assets in page order.

## Creator ad package

1. Use `ugc` for the talking-head or faceless creator asset.
2. Use this skill for campaign framing, channel matrix, hook variants, and
   conversion/end frames.
3. Keep the same proof and offer across creator variants.
4. Return creator clips and supporting marketing assets together.
