# solari insight instagram ranking brands

> 周辺のコンテンツをもとに Instagram のブランドを順位付けします。

- **CLI**: `solari insight instagram ranking brands`
- **MCP ツール**: `solari_insight_instagram_ranking_brands`
- **アクセス権**: `solari:read`
- **対象プラン**: 無料トライアル · Plus · Pro · Enterprise
- **クレジット**: 1

1 つの市場のブランドランキング。ブランドをタグ付け・メンションした投稿のパフォーマンスでブランドを順位付けします。各行でタイアップ投稿とオーガニック投稿を分けているため、ブランドのオーガニックでの実力と、リーチのうち有料が占める割合がわかります。

**どんなときに使うか** — カテゴリで上位のブランドや、あるブランドの順位、オーガニック（タイアップ以外）のコンテンツの成果を知りたいとき。クリエイターの場合は、クリエイターランキングを使います。

**返される内容** — 順位付けしたブランドの 1 ページ分。自分のブランドの順位（me）と、探すよう指定したブランド（lookup）も含みます。

## パラメータ

- `region` (enum, 任意, 既定値 "KR") — KR、JP、US のいずれか。 値: `KR`, `JP`, `US`.
- `days` (integer, 任意, 既定値 30) — 30 または 90。
- `sort` (enum, 任意, 既定値 "plays") — 順位付けの基準。総再生数、投稿あたりの再生数、投稿数、クリエイター数、いいね数、タイアップの再生数、オーガニックの再生数から選びます。 値: `plays`, `median_plays`, `posts`, `creators`, `likes`, `sponsored_plays`, `organic_plays`.
- `scope` (string, 任意, ≤ 120 chars) — カテゴリ。all、d1:<group>、d2:<group>/<category> のいずれかです。指定できる値は categories と category_groups で返ります。
- `brand_account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — 自分のブランドの account_id。既定のカテゴリが決まり、自分の順位が me として返ります。
- `brand_username` (string, 任意, ≤ 64 chars) — 自分のブランドの username。brand_account_id を指定した場合は無視されます。
- `find_username` (string, 任意, ≤ 64 chars) — このランキング内で位置を調べたいブランドの username。
- `min_posts` (integer, 任意, 既定値 1) — 投稿数が指定値以上のブランドのみ。1、3、10 のいずれか。
- `limit` (integer, 任意, 既定値 20, 1–100) — 1 ページあたりの行数。
- `offset` (integer, 任意, 既定値 0, ≥ 0) — スキップする行数。

## レスポンス

### `Response`

- `region / days / sort / min_posts` (string · integer) — 適用された設定。
- `scope` (string) — 順位付けしたカテゴリ。
- `scope_source` (string) — explicit（指定どおり）、brand_default（自分のブランドの主要カテゴリ）、default（all）のいずれか。
- `total` (integer) — このカテゴリのブランド数。
- `median_metric` (number | null) — カテゴリ全体での並べ替え指標の中央値。最初のページのみ。
- `sponsored_share_median` (number | null) — タイアップ投稿の割合の中央値（0–1）。最初のページのみ。
- `snapshot_at` (timestamp | null) — ランキングを作成した日時。
- `items` (object[]) — 順位付けしたブランド。
- `me` (object | null) — 自分のブランドの順位、総数、top_pct、行データ。
- `me_reason` (string | null) — me が null になった理由。no_brand、not_in_category、below_min_posts、no_posts のいずれか。
- `lookup` (object | null) — find_username で指定したブランドの順位、総数、top_pct、行データ。
- `lookup_reason` (string | null) — lookup が null になった理由。not_in_category、below_min_posts、no_posts のいずれか。
- `lookup_scopes` (string[]) — 調べたブランド自身のカテゴリ（scope の形式）。このいずれかを指定して再度呼び出します。
- `brand_categories` (object[]) — 自分のブランドのカテゴリ（関連の強い順）。
- `categories / category_groups` (object[]) — 指定できる scope と、それぞれのブランド数。

### `items[] · me.row · lookup.row`

- `rank` (integer) — ランキング内の順位。
- `account_id` (uuid) — ほかのツールで使う account_id。
- `username / full_name` (string) — ハンドルと表示名。
- `follower_count` (integer | null) — フォロワー数。
- `post_count / creator_count` (integer) — ブランドに関する投稿数と、その投稿をしたクリエイター数。
- `total_plays / median_plays` (integer) — 総再生数と投稿あたりの再生数。
- `total_likes / total_comments` (integer) — エンゲージメント。
- `sponsored_post_count / sponsored_total_plays / sponsored_median_plays` (integer) — 同じ数値をタイアップ投稿だけで集計したもの。
- `organic_median_plays` (integer | null) — タイアップ以外の投稿の、投稿あたりの再生数。
- `organic_post_count / organic_total_plays` (integer | null) — タイアップを除いた投稿数と総再生数。件数の整合が取れない場合は null。
- `sponsored_share` (number | null) — 全投稿に占めるタイアップ投稿の割合（0–1）。投稿がない場合は null。
- `sponsored_reel_count / organic_reel_count` (integer | null) — それぞれの区分に含まれるリール数。
- `categories` (string[]) — ブランドのカテゴリ（<group>/<category> の形式）。

## 例

```console
$ solari insight instagram ranking brands region=KR days=30 find_username=innisfreeofficial limit=1
```

_読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_

```json
{
  "region": "KR",
  "days": 30,
  "sort": "plays",
  "scope": "all",
  "scope_source": "default",
  "min_posts": 1,
  "offset": 0,
  "limit": 1,
  "total": 21483,
  "median_metric": 18250,
  "sponsored_share_median": 0.25,
  "snapshot_at": "2026-09-22T19:04:11.482913+00:00",
  "me_reason": "no_brand",
  "lookup_username": "innisfreeofficial",
  "lookup_reason": null,
  "lookup_scopes": [],
  "brand_categories": [],
  "categories": [
    {
      "depth_1": "BEAUTY",
      "depth_2": "MAKEUP",
      "brands": 1622
    },
    {
      "depth_1": "BEAUTY",
      "depth_2": "SKINCARE",
      "brands": 1843
    },
    "… 41 more"
  ],
  "category_groups": [
    {
      "depth_1": "BEAUTY",
      "brands": 3120
    },
    "… 11 more"
  ],
  "items": [
    {
      "account_id": "018cab6d-1648-7071-9734-c47a2be2fd19",
      "rank": 1,
      "user_id": "018cab6d-1648-7071-9734-c47a2be2fd19",
      "username": "oliveyoung_official",
      "full_name": "올리브영 OLIVE YOUNG",
      "follower_count": 1199628,
      "post_count": 18342,
      "creator_count": 6120,
      "total_plays": 412880000,
      "median_plays": 9840,
      "total_likes": 15230000,
      "total_comments": 402100,
      "sponsored_post_count": 7010,
      "sponsored_total_plays": 131200000,
      "sponsored_median_plays": 11200,
      "organic_median_plays": 9100,
      "sponsored_reel_count": 5230,
      "organic_reel_count": 8120,
      "categories": [
        "BEAUTY/SKINCARE",
        "BEAUTY/MAKEUP"
      ],
      "organic_post_count": 11332,
      "organic_total_plays": 281680000,
      "sponsored_share": 0.3822
    }
  ],
  "me": null,
  "lookup": {
    "rank": 7,
    "total": 21483,
    "top_pct": 0.1,
    "row": {
      "account_id": "018cabce-14cc-7544-8890-7811ec33ef74",
      "rank": 7,
      "user_id": "018cabce-14cc-7544-8890-7811ec33ef74",
      "username": "innisfreeofficial",
      "full_name": "INNISFREE | 이니스프리",
      "follower_count": 847619,
      "post_count": 1204,
      "creator_count": 688,
      "total_plays": 38920400,
      "median_plays": 14120,
      "total_likes": 1182300,
      "total_comments": 30440,
      "sponsored_post_count": 402,
      "sponsored_total_plays": 17610200,
      "sponsored_median_plays": 21800,
      "organic_median_plays": 11900,
      "sponsored_reel_count": 318,
      "organic_reel_count": 611,
      "categories": [
        "BEAUTY/SKINCARE"
      ],
      "organic_post_count": 802,
      "organic_total_plays": 21310200,
      "sponsored_share": 0.3339
    }
  }
}
```

## MCP で呼び出す場合

```json
{
  "name": "solari_insight_instagram_ranking_brands",
  "arguments": {
    "region": "KR",
    "days": 30,
    "find_username": "innisfreeofficial",
    "limit": 1
  }
}
```

## 注意点

- ランキングは毎日更新されます。更新日時は snapshot_at で確認できます。
- ブランドを指定して scope を省略すると、all ではなくそのブランドの主要カテゴリのランキングを表示します。
- me と lookup は最初のページ（offset=0）でのみ返ります。

## 関連ツール

- [`solari_insight_instagram_ranking_posts`](https://clip-pub.bzine.co/docs/tools/insight-instagram-ranking-posts.md?lang=ja)
- [`solari_insight_instagram_ranking_find`](https://clip-pub.bzine.co/docs/tools/insight-instagram-ranking-find.md?lang=ja)
- [`solari_insight_instagram_ranking_creators`](https://clip-pub.bzine.co/docs/tools/insight-instagram-ranking-creators.md?lang=ja)
