Google Ads 移轉作業

Google Ads (原名為 Google AdWords) 專用的 BigQuery 資料移轉服務可讓您針對 Google Ads 報表資料自動安排及管理週期性載入工作。

支援的報表

Google Ads 專用的 BigQuery 資料移轉服務目前支援下列報表選項:

如要瞭解 Google Ads 報表如何轉換成 BigQuery 表格和視圖,請參閱 Google Ads 報表轉換一文。

如要將 Google Ads 報表對應到 Google Ads UI 中顯示的項目,請參閱將報表對應至 Google Ads UI 一文。

報表選項 支援
支援的 API 版本

v201809

如需瞭解 Google Ads API (AdWords API) 遷移,請參閱遷移指南 (v201809)

排程

每天,時間則為首次建立移轉作業的時間 (預設)

您可以設定這個時間。

更新期

最近 7 天 (預設)

最多可設為 30 天

對照表快照每天擷取一次,並儲存在最新執行日期的分區中。系統「不會」根據補充作業或透過更新期載入的天數更新對照表快照。如要瞭解哪些對照表不會經由更新期更新,請參閱設定補充作業一文。

補充作業時間上限

不限

Google Ads 沒有已知的資料保留限制,但 BigQuery 資料移轉服務對於可透過單一補充作業要求的天數設有限制。如要瞭解補充作業,請參閱設定補充作業一文。

每個管理員帳戶的客戶 ID 數

1,000

BigQuery 資料移轉服務對每個 Google Ads 管理員帳戶 (MCC) 最多支援 1000 個客戶 ID

事前準備

建立 Google Ads 移轉作業前的準備事項如下:

  • 確認您已完成啟用 BigQuery 資料移轉服務的一切必要動作。
  • 建立 BigQuery 資料集以儲存 Google Ads 資料。
  • 如果您想要使用傳統 BigQuery 網頁版 UI 建立移轉作業,請允許來自 bigquery.cloud.google.com 的彈出式視窗,以便查看權限視窗。為使移轉作業順利進行,您必須授權 BigQuery 資料移轉服務權限管理您的 Google Ads 廣告活動。
  • 移轉執行通知目前仍為 Alpha 版。如果您想要為 Cloud Pub/Sub 設定移轉執行通知,您必須具有 pubsub.topics.setIamPolicy 權限。如果您只是要設定電子郵件通知,就不需要 Cloud Pub/Sub 權限。詳情請參閱 BigQuery 資料移轉服務執行通知一文。

所需權限

確認建立移轉作業的人員具有以下必要權限:

  • BigQuery

    • 建立移轉作業的 bigquery.transfers.update 權限
    • 目標資料集上的 bigquery.datasets.update 權限

    bigquery.admin 預先定義的專案層級 Cloud IAM 角色包括 bigquery.transfers.updatebigquery.datasets.update 權限。如要深入瞭解 BigQuery 中的身分與存取權管理角色,請參閱存取權控管一文。

  • Google Ads:移轉設定所使用的 Google Ads 客戶 ID 或管理員帳戶 (MCC) 的讀取權限。

設定 Google Ads 資料移轉

設定 Google Ads 報表資料移轉作業必須具備:

  • 客戶 ID:Google Ads 核發的 Google Ads 客戶 ID 或管理員帳戶 (MCC)。如要瞭解如何擷取 Google Ads 客戶 ID,請參閱尋找客戶 ID 一文。

如要為 Google Ads 報表建立資料移轉作業,請按照以下步驟操作:

主控台

  1. 前往 GCP 主控台。

    前往 GCP 主控台

  2. 按一下 [Transfers] (移轉作業)

  3. 按一下 [Create Transfer] (建立移轉作業)

  4. 在「Create Transfer」(建立移轉作業) 頁面上:

    • 在「Source type」(來源類型) 區段中,針對「Source」(來源),選擇 [Google Ads]

      移轉作業來源

    • 在「Transfer config name」(移轉設定名稱) 區段,針對「Display name」(顯示名稱),輸入移轉作業的名稱,例如 My Transfer。移轉作業名稱可以是任何容易辨識的值,方便您日後在必要時進行修改。

      移轉作業名稱

    • 在「Schedule options」(排程選項) 區段或「Schedule」(排程) 中,保留預設值 ([Start now] (立即開始)),或按一下 [Start at a set time] (於設定的時間開始)

      • 在「Repeats」(重複時間間隔) 部分,選擇多久執行一次移轉作業的選項。

        • Daily (每天) (預設)
        • Weekly (每週)
        • Monthly (每月)
        • Custom (自訂)
        • 隨選
      • 在「Start date and run time」(開始日期和執行時間) 部分,輸入開始移轉的日期與時間。如果您選擇 [Start now] (立即開始),就會停用此選項。

        移轉作業時間表

    • 在 [Destination dataset] (目的地資料集) 區段,針對「Destination dataset」(目的地資料集),選擇您建立來儲存資料的資料集。

      移轉資料集

    • 在「Data source details」(資料來源詳細資料) 區段:

      • 針對 [客戶 ID],輸入您的客戶 ID 或管理員帳戶。
      • 勾選 [Exclude removed/disabled Items] (排除已移除/已停用的項目),以免移轉已移除或停用的實體和指標。

        Google Ads 來源詳細資料

    • (選用) 在「Notification options」(通知選項) 區段中:

      • 按一下啟用電子郵件通知的切換開關。當您啟用此選項時,移轉管理員會在移轉作業失敗時收到電子郵件通知。
      • 在「Select a Cloud Pub/Sub topic」(選取 Cloud Pub/Sub 主題) 部分,選擇您的主題名稱,或按一下 [Create a topic] (建立主題)。此選項可為移轉作業設定 Cloud Pub/Sub 執行通知。移轉執行通知目前仍為 Alpha 版。
  5. 按一下 [Save] (儲存)。

傳統版 UI

  1. 使用傳統 BigQuery 網頁版 UI

    前往 BigQuery 傳統網頁版 UI

  2. 按一下 [Transfers] (移轉作業)

  3. 按一下 [Add Transfer] (新增移轉作業)。

  4. 在「新增移轉」頁面上:

    • 針對 [來源],選擇 [Google Ads (原名為 AdWords)]
    • 針對 [顯示名稱],輸入移轉作業的名稱,例如 My Transfer。移轉作業名稱可以是任何容易辨識的值,方便您日後在必要時進行修改。
    • 在 [Refresh window] (更新期) 中,輸入資料移轉作業涵蓋的天數。輸入 1 表示不會每天執行補充作業,輸入 0 則會將更新期設為預設的 7 天。輸入值的上限為 30。
      1. 詳情請參閱判斷資料的時效一文。
    • 針對「Schedule」,保留預設值 (以移轉作業建立時間為時間點,間隔為每 24 小時);或點選 [Edit],然後變更時間。

      Google Ads 排程

    • 針對 [Destination dataset] (目的地資料集),選擇您為儲存 Google Ads 資料而建立的資料集。

    • 針對 [客戶 ID],輸入您的客戶 ID 或管理員帳戶。

    • 勾選 [Exclude removed/disabled Items] (排除已移除/已停用的項目),以免移轉已移除或停用的實體和指標。

      Google Ads 移轉

    • (選用) 展開「Advanced」(進階) 區段,然後設定移轉作業的執行通知。移轉執行通知目前仍為 Alpha 版。

      • 在「Cloud Pub/Sub topic」(Cloud Pub/Sub 主題) 部分,輸入您的主題名稱,例如 projects/myproject/topics/mytopic
      • 勾選「Send email notifications」(傳送電子郵件通知),讓系統在移轉執行失敗時,寄送電子郵件通知。
      • 設定移轉作業時,請勿勾選 [Disabled] (已停用)。如需停用現有的移轉作業,請參閱使用移轉一文。

        Cloud Pub/Sub 主題

  5. 按一下 [Add] (新增)

  6. 出現提示時,請按一下 [Allow] (允許),讓 BigQuery 資料移轉服務有權限管理您的 Google Ads 報表資料,以及存取並管理 BigQuery 中的資料。您必須允許來自 bigquery.cloud.google.com 的彈出式視窗,才能查看權限視窗。

    允許移轉

CLI

輸入 bq mk 指令並提供轉換建立標記 --transfer_config。以下標記也須提供:

  • --data_source
  • --target_dataset
  • --display_name
  • --params

您也可以提供 --project_id 標記,用以指定特定的專案。如未指定 --project_id,系統會使用預設的專案。

bq mk \
--transfer_config \
--project_id=project_id \
--target_dataset=dataset \
--display_name=name \
--params='parameters' \
--data_source=data_source

其中:

  • 「project_id」是您的專案 ID。
  • 「dataset」是移轉設定的目標資料集。
  • 「name」是移轉設定的顯示名稱。移轉名稱可以是任何容易識別並且方便您後續修改的值。
  • 「parameters」含有已建立移轉設定的 JSON 格式參數,例如:--params='{"param":"param_value"}'。針對 Google Ads,您必須提供 customer_id 參數。您可以選擇將 exclude_removed_items 參數設為 true,以免移轉遭到移除或停用的實體和指標。
  • 「data_source」是資料來源:adwords

舉例來說,下列指令會使用客戶 ID 123-123-1234 和目標資料集 mydataset 建立名為 My Transfer 的 Google Ads 移轉作業。移轉是以預設的專案建立:

bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"customer_id":"123-123-1234","exclude_removed_items":"true"}' \
--data_source=adwords

首次執行指令時,您會收到類似以下的訊息:

[URL omitted] Please copy and paste the above URL into your web browser and follow the instructions to retrieve an authentication code.

請按照訊息中的操作說明進行,並在指令列中貼上驗證碼。

API

使用 projects.locations.transferConfigs.create 方法,並提供 TransferConfig 資源的執行個體。

對 Google Ads 管理員帳戶的支援

我們建議目前有多項特定客戶 ID Google Ads 移轉作業的客戶,於管理員帳戶 (MCC) 層級設定單一 Google Ads 移轉作業,安排補充作業時間,然後停用個別特定客戶 ID Google Ads 移轉作業。

使用 Google Ads 管理員帳戶比使用個別客戶 ID 多了幾項優點:

  • 不必再針對多個客戶 ID 管理要報告的多項移轉作業。
  • 由於所有客戶 ID 都儲存在同一份資料表中,因此更容易寫入跨客戶查詢。
  • 使用 MCC 可減少 BigQuery 載入配額問題,因為多個客戶 ID 會在同一項工作中載入。

如要深入瞭解 Google Ads 管理員帳戶 (MCC),請參閱使用客戶帳戶關於將帳戶連結至管理員帳戶一文。

範例

下列清單顯示與特定 Google Ads 管理員帳戶連結的客戶 ID:

  • 1234567890 — 根管理員帳戶
    • 1234 — 子管理員帳戶
      • 1111 — 客戶 ID
      • 2222 — 客戶 ID
      • 3333 — 客戶 ID
      • 4444 — 客戶 ID
      • 567 — 子管理員帳戶
        • 5555 — 客戶 ID
        • 6666 — 客戶 ID
        • 7777 — 客戶 ID
    • 89 — 子管理員帳戶
      • 8888 — 客戶 ID
      • 9999 — 客戶 ID
    • 0000 — 客戶 ID

每個連結至管理員帳戶的客戶 ID 都會顯示在每份報表中。如要深入瞭解 BigQuery 的 Google Ads 報表結構,請參閱 Google Ads 報表轉換一文。

客戶 ID 1234567890 的移轉設定

根管理員帳戶 (客戶 ID 1234567890) 的移轉設定會產生包含下列客戶 ID 的移轉執行:

  • 1111 (透過子管理員帳戶 1234)
  • 2222 (透過子管理員帳戶 1234)
  • 3333 (透過子管理員帳戶 1234)
  • 4444 (透過子管理員帳戶 1234)
  • 5555 (透過子管理員帳戶 567 和子管理員帳戶 1234)
  • 6666 (透過子管理員帳戶 567 和子管理員帳戶 1234)
  • 7777 (透過子管理員帳戶 567 和子管理員帳戶 1234)
  • 8888 (透過子管理員帳戶 89)
  • 9999 (透過子管理員帳戶 89)
  • 0000 (個別客戶 ID)

客戶 ID 1234 的移轉設定

子管理員帳戶 123 (客戶 ID 123) 的移轉設定會產生包含下列客戶 ID 的移轉執行:

  • 1111
  • 2222
  • 3333
  • 4444
  • 5555 (透過子管理員帳戶 567)
  • 6666 (透過子管理員帳戶 567)
  • 7777 (透過子管理員帳戶 567)

客戶 ID 567 的移轉設定

子管理員帳戶 567 (客戶 ID 567) 的移轉設定會產生包含下列客戶 ID 的移轉執行:

  • 5555
  • 6666
  • 7777

客戶 ID 89 的移轉設定

子管理員帳戶 89 (客戶 ID 89) 的移轉設定會產生包含下列客戶 ID 的移轉執行:

  • 8888
  • 9999

客戶 ID 0000 的移轉設定

客戶 ID 0000 的移轉設定會產生只包含以下各別客戶 ID 的移轉執行:

  • 0000

將 Google Ads 資料遷移至 MCC

如要將 BigQuery 中現有的 Google Ads 資料遷移至 MCC 結構,您可以設定補充作業,將現有的資料加入由連結至管理員帳戶的移轉設定所建立的資料表。請注意,安排補充作業時間並不會更新對照表。

排解 Google Ads 移轉設定問題

如果您無法順利設定移轉作業,請參閱排解 BigQuery 資料移轉服務移轉設定問題一文中的 Google Ads 移轉問題

查詢資料

資料移轉至 BigQuery 時,系統會將資料寫入擷取時間分區資料表。詳情請參閱分區資料表簡介一文。

如果您要直接查詢資料表,而不要使用自動產生的資料檢視,您必須在查詢中使用 _PARTITIONTIME 虛擬資料欄。詳情請參閱查詢分區資料表

您可以使用下列 Google Ads 查詢範例來分析已移轉的資料。此外,您還可以在 Cloud DatalabGoogle 數據分析等視覺化工具中使用查詢。這些查詢可協助您開始透過 BigQuery 查詢您的 Google Ads 資料。如果您對於這些報表的功能有其他問題,請洽詢您的 Google Ads 技術代表。

在下列各項查詢中,請將「dataset」改成您的資料集名稱,並將「customer_id」改成您的 Google Ads 客戶 ID。

這些範例使用 BigQuery 的標準 SQL 支援。您可以使用 #standardSQL 標記,讓 BigQuery 知道您要使用標準 SQL。如要深入瞭解 #standardSQL 前置字串,請參閱設定查詢前置字串一文。

如果您要直接查詢資料表,而不要使用自動產生的視圖,您必須在查詢中使用 _PARTITIONTIME 虛擬資料欄。詳情請參閱查詢分區資料表

廣告活動成效

下列查詢範例分析了最近 30 天的 Google Ads 廣告活動成效。

主控台

SELECT
  c.ExternalCustomerId,
  c.CampaignName,
  c.CampaignStatus,
  SUM(cs.Impressions) AS Impressions,
  SUM(cs.Interactions) AS Interactions,
  (SUM(cs.Cost) / 1000000) AS Cost
FROM
  `dataset.Campaign_customer_id` c
LEFT JOIN
  `dataset.CampaignBasicStats_customer_id` cs
ON
  (c.CampaignId = cs.CampaignId
   AND cs._DATA_DATE BETWEEN
   DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) AND DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY))
WHERE
  c._DATA_DATE = c._LATEST_DATE
GROUP BY
  1, 2, 3
ORDER BY
  Impressions DESC

CLI

bq query --use_legacy_sql=false '
SELECT
  c.ExternalCustomerId,
  c.CampaignName,
  c.CampaignStatus,
  SUM(cs.Impressions) AS Impressions,
  SUM(cs.Interactions) AS Interactions,
  (SUM(cs.Cost) / 1000000) AS Cost
FROM
  `dataset.Campaign_customer_id` c
LEFT JOIN
  `dataset.CampaignBasicStats_customer_id` cs
ON
  (c.CampaignId = cs.CampaignId
   AND cs._DATA_DATE BETWEEN
   DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) AND DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY))
WHERE
  c._DATA_DATE = c._LATEST_DATE
GROUP BY
  1, 2, 3
ORDER BY
  Impressions DESC'

關鍵字數量

下列查詢範例分析了關鍵字 (依廣告活動、廣告群組和關鍵字狀態)。這類查詢採用 KeywordMatchType 函式。關鍵字比對類型可用來控制能帶出廣告的搜尋查詢。如要深入瞭解關鍵字比對選項,請參閱關於關鍵字比對選項一文。

主控台

SELECT
  c.CampaignStatus AS CampaignStatus,
  a.AdGroupStatus AS AdGroupStatus,
  k.Status AS KeywordStatus,
  k.KeywordMatchType AS KeywordMatchType,
  COUNT(*) AS count
FROM
  `dataset.Keyword_customer_id` k
  JOIN
  `dataset.Campaign_customer_id` c
ON
  (k.CampaignId = c.CampaignId AND k.DATA_DATE = c._DATA_DATE)
JOIN
  `dataset.AdGroupcustomer_id` a
ON
  (k.AdGroupId = a.AdGroupId AND k._DATA_DATE = a._DATA_DATE)
WHERE
  k._DATA_DATE = k._LATEST_DATE
GROUP BY
  1, 2, 3, 4

CLI

bq query --use_legacy_sql=false '
SELECT
  c.CampaignStatus AS CampaignStatus,
  a.AdGroupStatus AS AdGroupStatus,
  k.Status AS KeywordStatus,
  k.KeywordMatchType AS KeywordMatchType,
  COUNT(*) AS count
FROM
  `dataset.Keyword_customer_id` k
JOIN
  `dataset.Campaign_customer_id` c
ON
  (k.CampaignId = c.CampaignId AND k._DATA_DATE = c._DATA_DATE)
JOIN
  `dataset.AdGroup_customer_id` a
ON
  (k.AdGroupId = a.AdGroupId AND k._DATA_DATE = a._DATA_DATE)
WHERE
  k._DATA_DATE = k._LATEST_DATE
GROUP BY
  1, 2, 3, 4'
本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁