YouTube SaaS

Add YouTube intelligence to your product this week

Building a scoring engine from scratch takes months of data collection, model training, and ongoing maintenance. BrightBean is a white-label API that drops into your existing UI. Your users see the scores. They never see us.

The problem

Don't reinvent the intelligence layer

Build from scratch

Months of development. Training data collection. Model tuning. Ongoing maintenance. All for a feature that is not your core product.

Ship without intelligence

Your users export to spreadsheets to make decisions. They will switch to the first competitor that adds scoring to their editor.

Embed BrightBean

One API integration, all 5 endpoints. Title scoring, content gaps, benchmarks, thumbnail analysis, and hook classification. Ready to embed today.

See it in action

A YouTube scheduling tool adds title scoring

Here is what the integration looks like for a scheduling app that wants real-time title scores in their video editor.

1

Add real-time title scoring to your editor UI

Your user types a title in your video editor. Your backend calls /score/title and shows the score inline. The response includes a 0-100 score, matched patterns, and a rewrite suggestion.

The whole round trip takes under 500ms. Fast enough to score on every keystroke debounce, or on blur when the user tabs out of the title field.

Your UI, your branding, your UX. BrightBean returns raw JSON. No iframes, no widgets, no third-party branding in your product.

fetch /score/title
const response = await fetch(
  "https://api.brightbean.xyz/v1/score/title",
  {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.BRIGHTBEAN_KEY}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      title: userInput.title,
      niche: channel.niche
    })
  }
);
const { score, patterns, rewrite_suggestion } =
  await response.json();

// Response:
// {
//   "score": 74,
//   "patterns": ["number_list", "under_price", "authority"],
//   "rewrite_suggestion": "I Tested 5 Cameras Under $300..."
// }
2

Power your content calendar with gap analysis

Your users want to know what to make next. The /content-gaps endpoint returns topics where demand is high but competition is low, ranked by opportunity.

Each result includes a demand score, a count of competing videos with 10k+ views, and an opportunity rating. Pipe these directly into your content calendar UI so users can drag topics onto their schedule.

Cache the response for 7 days. Content gaps shift slowly enough that weekly refreshes keep the data accurate without burning through your API quota.

/content-gaps response
{
  "content_gaps": [
    {
      "topic": "standing desk under $150 review",
      "demand_score": 79,
      "competing_videos_above_10k_views": 3,
      "opportunity_rating": "high",
      "suggested_title": "I Tested 5 Standing Desks Under $150"
    },
    {
      "topic": "ergonomic keyboard for programmers",
      "demand_score": 72,
      "competing_videos_above_10k_views": 5,
      "opportunity_rating": "medium",
      "suggested_title": "The Keyboard That Fixed My Wrist Pain"
    },
    {
      "topic": "desk setup for small apartments",
      "demand_score": 85,
      "competing_videos_above_10k_views": 2,
      "opportunity_rating": "very_high",
      "suggested_title": "My $400 Desk Setup in 60 Square Feet"
    }
  ],
  "niche": "desk setups",
  "videos_analyzed": 11200
}
3

Build competitive dashboards for your users

The /benchmark endpoint returns how a channel stacks up against others in the same niche. Engagement ratios, posting cadence, title effectiveness, and growth tier.

Display this in a competitor comparison view. Your users see exactly where they are strong and where they fall behind, without leaving your product.

/benchmark response
{
  "channel_tier": "emerging",
  "views_per_sub_ratio": 0.22,
  "niche_avg_ratio": 0.08,
  "title_score_avg": 74,
  "niche_title_score_avg": 52,
  "posting_frequency": "4.2x/week",
  "niche_avg_frequency": "2.1x/week",
  "top_patterns": ["number_list", "personal_pronoun"],
  "growth_signal": "accelerating"
}
4

How your users experience it

Before BrightBean

  • User types a title, gets no feedback
  • Opens vidIQ in another tab to check SEO
  • Manually browses YouTube for content ideas
  • Considers switching to a tool with built-in analytics

After BrightBean

  • User types a title, sees a score and rewrite suggestion instantly
  • Content calendar shows high-opportunity topics they can drag onto their schedule
  • Competitor dashboard shows exactly where they are ahead and behind
  • Never leaves your product. Stays and pays.

Getting started

Backend integration path

Call BrightBean from your server, cache responses, display in your UI. Here is the typical flow for a Node.js backend.

The integration pattern

Your frontend sends title text to your own API. Your backend calls BrightBean, caches the result, and returns the score to your UI. The user never interacts with BrightBean directly.

Cache title scores for 24 hours

Title pattern data is stable. No need to re-score the same title within a day.

Cache content gaps for 7 days

Content gaps shift slowly. Weekly refreshes keep data accurate without wasting API calls.

Cache benchmarks for 7 days

Channel stats do not change hour to hour. A weekly refresh is enough for competitive dashboards.

your-api/routes/score.js
const scoreTitle = async (title, niche) => {
  // Check cache first
  const cacheKey = `score:${niche}:${title}`;
  const cached = await redis.get(cacheKey);
  if (cached) return JSON.parse(cached);

  // Call BrightBean
  const res = await fetch(
    "https://api.brightbean.xyz/v1/score/title",
    {
      method: "POST",
      headers: {
        "Authorization": `Bearer ${BRIGHTBEAN_KEY}`,
        "Content-Type": "application/json"
      },
      body: JSON.stringify({ title, niche })
    }
  );
  const data = await res.json();

  // Cache for 24 hours
  await redis.set(cacheKey, JSON.stringify(data), "EX", 86400);
  return data;
};

The numbers

Built for SaaS teams, priced to scale

All 5 endpoints

Title scoring, thumbnails, content gaps, hooks, and benchmarks. One integration covers your entire feature set.

Sub-500ms

Title scoring fast enough for real-time UI. No loading spinners. Scores appear while your user is still typing.

$0.02/call

Predictable overage pricing. No surprise bills. You know the cost per user before you ship the feature.

Common questions from SaaS teams

Can I white-label BrightBean responses? +

Yes. BrightBean returns raw JSON with no branding. Display it however you want in your own UI. Your users never see the BrightBean name unless you choose to mention it.

What happens if I exceed my API limits? +

You get billed at $0.02 per additional call. No service interruption, no throttling, no surprises. Your users will not notice anything different.

How reliable is the API? +

99.9% uptime SLA on Standard and Growth plans. Responses are served from edge infrastructure for low latency globally. If you need a custom SLA, contact us about enterprise pricing.

What caching strategy do you recommend? +

Cache title scores for 24 hours and content gaps and benchmarks for 7 days. Pattern data is stable, so this keeps results accurate while minimizing API usage. Most SaaS integrations see a 70-80% cache hit rate with this approach.

Do you offer volume discounts? +

The Growth plan at $399/month covers 500,000 calls. If you need more, contact us for enterprise pricing with custom SLAs, dedicated support, and volume rates.

Do you provide SDKs? +

Not yet. The API is standard REST JSON, so any HTTP client works. A Node.js SDK and Python SDK are on the roadmap. For now, a simple fetch wrapper like the one shown above is all you need.

Ship YouTube intelligence this week.

Start free. 500 API calls, no credit card required.