TikTok広告
TikTok広告キャンペーンを管理するための戦略的ガイドです。プラットフォームの目的別厳格要件に沿って、詳細な調査、パラメータの慎重な検証、そしてユーザーへのガイダンスを行います。
このスキルは有料TikTok広告(TikTok Marketing API)を対象としています。オーガニックなTikTok動画投稿については、将来の tiktok-posting 姉妹スキルを参照してください。
前提条件
- Hyper MCPがインストールされ、接続されていること。 https://app.hyperfx.ai/mcp
- TikTok Marketing統合が接続されていること(TikTok Ads Manager / Business Center) https://app.hyperfx.ai/integrations。
tiktok_get_advertiser_accounts がツールリストにない場合は、処理を停止し、Hyper MCPを有効にしてTikTok Marketingを接続するようユーザーに伝えてください。
ツール一覧
| ツール | 目的 |
|---|---|
tiktok_get_advertiser_accounts | ディスカバリー:接続ユーザーが利用可能な広告主ID一覧を取得 |
tiktok_get_campaigns、tiktok_create_campaign、tiktok_update_campaign、tiktok_update_campaign_status | キャンペーンライフサイクル |
tiktok_get_adgroups、tiktok_create_adgroup、tiktok_update_adgroup、tiktok_update_adgroup_status | 広告グループライフサイクル |
tiktok_get_ads、tiktok_create_ad、tiktok_update_ad_status | 広告ライフサイクル。注意:MCPには tiktok_update_ad は存在しません。広告コンテンツの編集(クリエイティブ、コピー、URL)はTikTok Ads Manager UIが必要です。MCPではステータス変更(有効化 / 一時停止 / 削除)のみ可能です。 |
tiktok_ad_video_upload、tiktok_ad_video_info、tiktok_ad_video_search | 動画クリエイティブのアップロード + 検索 |
tiktok_report_integrated_get | パフォーマンスレポート |
tiktok_create_custom_audience、tiktok_list_custom_audiences、tiktok_create_lookalike_audience | オーディエンス管理(オプション) |
フェーズ1:アカウントの発見
初期設定
tiktok_get_advertiser_accounts()を使用して広告主IDを取得します。- 複数のアカウントがある場合:ユーザーに選択を促します。
- 単一のアカウントの場合:ユーザーに通知し、処理を進めます。
入札ベンチマーク(推奨)
入札価格を設定する前に、tiktok_ad_benchmarks を呼び出して業界固有のCPM / CPCベンチマークを取得します。これにより、入札に勝つには低すぎる、またはユーザーの予算に対して高すぎるプレースホルダー値の使用を防ぎます。
tiktok_ad_benchmarks(
advertiser_id="123456789",
dimensions=["industry"],
filtering={"industry": "292801"} # tiktok_get_advertiser_accounts から取得した業種コード
)
利用可能なキャンペーン目的
| 目的 | 最適な用途 | 主な要件 |
|---|---|---|
TRAFFIC | ウェブサイト訪問数の促進 | promotion_type="WEBSITE"、CPC課金 |
CONVERSIONS | 購入 / リードの促進 | Pixel ID、コンバージョンイベント追跡 |
REACH | ブランド認知 | 手動プレースメントのみ、CPM課金、フリークエンシーキャップ |
APP_PROMOTION | アプリインストール | アプリID、アプリストアURL |
VIDEO_VIEW | 動画エンゲージメント | 動画クリエイティブアセット |
フェーズ2:キャンペーン作成
ステップ1:キャンペーン作成
予算要件:
- キャンペーンレベル予算の最低50ドル(TikTok要件)。
budget_mode:BUDGET_MODE_INFINITE(CBO)、BUDGET_MODE_DAY、またはBUDGET_MODE_TOTAL。
tiktok_create_campaign(
advertiser_id="123456789",
campaign_name="サマーセール2026",
objective_type="TRAFFIC",
budget_mode="BUDGET_MODE_DAY",
budget=50.0, # 最低 $50/日
operation_status="ENABLE"
)
ステップ2:広告グループ作成
常に必須のパラメータ:
advertiser_id、campaign_id、adgroup_namelocation_ids(例:米国の場合は["6252001"])schedule_typeとschedule_start_time(将来の日付である必要があります)billing_event(CPC、CPM、OCPM)budget_mode(広告グループで必須)
TRAFFICキャンペーンの場合:
tiktok_create_adgroup(
advertiser_id="123456789",
campaign_id="1234567890123456",
adgroup_name="ウェブサイトトラフィック - サマーセール",
location_ids=["6252001"], # 米国
schedule_type="SCHEDULE_FROM_NOW",
schedule_start_time="2026-06-01 00:00:00", # 未来の日付
billing_event="CPC",
budget_mode="BUDGET_MODE_DAY",
budget=30.0,
promotion_type="WEBSITE", # TRAFFICでは必須
optimization_goal="CLICK", # 必須(正しいスペル)
bid_price=0.50,
placement_type="PLACEMENT_TYPE_AUTOMATIC",
operation_status="ENABLE"
)
REACHキャンペーンの場合:
tiktok_create_adgroup(
advertiser_id="123456789",
campaign_id="1234567890123456",
adgroup_name="米国ブランド認知",
location_ids=["6252001"],
schedule_type="SCHEDULE_FROM_NOW",
schedule_start_time="2026-06-01 00:00:00",
billing_event="CPM", # REACHでは必須
budget_mode="BUDGET_MODE_DAY",
budget=30.0,
optimization_goal="REACH",
placement_type="PLACEMENT_TYPE_NORMAL", # 必須 — 自動は非対応
placements=["PLACEMENT_TIKTOK"], # 必須
bid_price=2.0, # 必須
frequency=3, # 必須
frequency_schedule=7, # 必須
operation_status="ENABLE"
)
ステップ3:クリエイティブアセットのアップロード
クリエイティブバリエーションごとに1つの動画をアップロードします。返された video_id を記録してください — ステップ4で必要になります。
video_response = tiktok_ad_video_upload(
advertiser_id="123456789",
video_file=video_data,
upload_type="UPLOAD_BY_FILE"
)
video_id = video_response["data"]["video_id"]
既にアップロード済みの動画は再利用できます。
tiktok_ad_video_searchを使用して名前で既存の動画を検索するか、tiktok_ad_video_infoで既知の動画IDのメタデータを取得してください。
ステップ4:広告の作成
tiktok_create_ad(
advertiser_id="123456789",
adgroup_id="1234567890123456",
ad_name="サマーセール - ヒーロービデオ",
identity_type="CUSTOMIZED_USER", # またはTikTokアカウントスパーク広告の場合は "AUTH_CODE"
identity_id="<advertiser_identity_id>",
ad_format="SINGLE_VIDEO",
video_id=video_id,
ad_text="期間限定サマードロップ。今すぐショップへ。",
landing_page_url="https://example.com/summer",
call_to_action="SHOP_NOW",
operation_status="DISABLE" # 一時停止状態で作成し、レビュー後に有効化
)
広告は常に一時停止状態(operation_status="DISABLE")で作成し、ユーザーがレビューした後にのみ ENABLE に切り替えてください。
重要なパラメータルール
一般的なエラーと解決策
| エラー | 解決策 |
|---|---|
| 予算が最低50ドル未満 | TikTokはキャンペーン予算に最低50ドルを義務付けています。 |
| 開始時刻が過去 | schedule_start_time には未来の日付と現在の年を使用してください。 |
TikTok APIが一部のコンテキストで optimize_goal を拒否 | スキーマには optimize_goal と optimization_goal の両方が存在しますが、optimization_goal を推奨します — TikTokがほとんどの目的タイプで検証するフィールドです。 |
| 手動プレースメントのみサポート | REACHには placement_type="PLACEMENT_TYPE_NORMAL" が必要です。 |
| 入札額は0ドルより大きい必要があります | bid_price を > 0 に設定します。 |
| フリークエンシーキャップを設定してください | REACHには frequency と frequency_schedule の両方が必要です。 |
パラメータの依存関係
TRAFFIC目的に必要なもの:
promotion_type="WEBSITE"optimization_goal="CLICK"billing_event="CPC"bid_price> 0
REACH目的に必要なもの:
optimization_goal="REACH"billing_event="CPM"placement_type="PLACEMENT_TYPE_NORMAL"placements配列(例:["PLACEMENT_TIKTOK"])bid_price> 0frequencyとfrequency_schedule
CONVERSIONS目的に必要なもの:
- 接続されたTikTok Pixelと設定済みのコンバージョンイベント
optimization_goal="CONVERT"(または価値ベースの場合はVALUE)billing_event="OCPM"- 広告グループに設定された
pixel_idとexternal_action
レポート
tiktok_report_integrated_get(
advertiser_id="123456789",
report_type="BASIC",
data_level="AUCTION_AD",
dimensions=["ad_id"], # IDベースのみ — 名前は不可
start_date="2026-04-01",
end_date="2026-04-30",
metrics=["impressions", "clicks", "ctr", "spend", "cpc", "cpm"],
page_size=20
)
レポートルール:
stat_time_dayディメンションを使用する場合:1回の呼び出しで最大30日間の範囲。- IDベースのディメンションのみを使用してください(
ad_id、campaign_id、adgroup_id— 名前は不可)。 - コンバージョンメトリクス(
conversion、cost_per_conversion、conversion_rateなど)には、接続されたピクセルと設定済みのコンバージョンイベントが必要です。 data_levelはディメンションの粒度と一致している必要があります:AUCTION_ADはad_id、AUCTION_ADGROUPはadgroup_id、AUCTION_CAMPAIGNはcampaign_idと組み合わせます。
安全ルール
禁止事項:
- ユーザーに警告せずに、広告グループの予算を1日20ドル未満に設定すること。
- 過去の
schedule_start_timeでキャンペーンをスケジュールすること(TikTokは混乱を招くエラーで拒否します)。 - REACH広告グループを
PLACEMENT_TYPE_AUTOMATICと組み合わせること — 警告なくバリデーションに失敗します。 - ユーザーがクリエイティブとターゲティングをレビューする前に、
operation_status="ENABLE"で広告を作成すること。 - 名前ベースのディメンションでレポートを実行すること — TikTokはIDディメンションのみを受け付けます。