なぜkintone→BigQuery連携は選択肢が5つに分かれるのか
同じ「kintone → BigQuery」の要望でも、案件ごとに採用される方式が違うのは、要件が3つの軸で大きくばらつくためです。
1つ目は 対象アプリ数とAPIコール量 です。kintone は業務ごとにアプリを自由に増やせるため、10アプリで済む会社もあれば、100アプリを超える会社もあります。1アプリあたり10,000リクエスト/日という上限(スタンダードコース)は、cursor API で500件ずつ取れば10万レコードの全件同期でも200リクエスト程度で済むので、日次バッチなら余裕がありますが、時間単位や分単位で複数アプリを回すと制限に接近します。
2つ目は サブテーブル・添付ファイル・ルックアップの扱い です。kintone レコードにはネストしたサブテーブル配列と、fileKey しか返さない添付ファイル、時点コピーで陳腐化するルックアップが混在します。これらを BigQuery でどう表現するかは方式ごとに大きく違い、trocco は既定でサブテーブルを親子2テーブルに自動分離する一方、内製や Fivetran は自分で設計する必要があります。
3つ目は 社内の技術資産と稟議事情 です。すでにデータエンジニアが1人以上いて Cloud Run と Python が触れる会社なら、内製で月額を圧縮できます。エンジニア工数がなく、稟議も日本語 SaaS しか通りにくい会社なら、trocco が一択になります。逆に kintone を含む複数SaaSを英語系ツールで一元管理したい大企業は Fivetran、既存の CData 資産があれば CData Sync がそのまま伸びます。
この3軸で要件を整理すれば、5つの選択肢のうちどれが自社に合うかは概ね絞れます。以降のセクションでは、それぞれの方式の中身と、費用相場、選び方の判断軸を順に見ていきます。
5つの連携方式:概要と得意領域
kintone → BigQuery の連携方式は、大きく次の5つに整理できます。
| 方式 | 提供元 | 実装難易度 | 得意な要件 |
|---|
| trocco | primeNumber(日) | 低 | 日本語サポート、稟議通しやすさ、サブテーブル自動分離 |
| Fivetran | Fivetran(米) | 低〜中 | 複数SaaS横断、スキーマ自動追従、グローバル運用 |
| Cloud Run 内製 | Google Cloud+自作 | 高 | 費用最小化、要件フィット、既存GCP基盤への統合 |
| CData Sync | CData(米、日本代理店あり) | 中 | DB型フルレプリケーション、多数の書き込み先切替 |
| cli-kintone + GCS | サイボウズ公式(無料CLI) | 低〜中 | PoC、監査用バックアップ、単発分析 |
trocco は、日本のprimeNumber社が提供する ETL/ELT SaaS で、kintone 公式コネクタを持ちます。GUI からノーコードで転送設定を組め、サブテーブルは既定で親テーブルと子テーブルに自動分離、スケジュール実行にも対応します。料金は Free(月2時間まで、0円)、Starter(月75,000円、30時間枠、5ユーザー)、Essential(月150,000円、250時間枠、ユーザー無制限)、Advanced(月300,000円、600時間枠、コネクタ約200種類)の4段階で、初期費用はかかりません(trocco 料金体系の詳細と競合比較 参照)。10アプリ・日次同期の中小企業ケースなら Starter で十分収まり、稟議も国内SaaSで通しやすいのが強みです。
Fivetran は、700以上のコネクタを備えた米国発の SaaS ELT で、BigQuery を公式 destination として持ちます。kintone コネクタ自体は 2026年時点でカタログの明記が限定的なため、Custom Connector SDK での実装または Salesforce・HubSpot と合わせた統合構成が中心です。料金は MAR(Monthly Active Rows:月間追加・更新・削除された行数)ベースの従量課金で、standard connection で $5 ベース+MAR従量、規模により月 $500〜$3,000のレンジ。円建て請求ではないため、為替と MAR 変動で月額が読みにくく、中小企業では割高になりがちです。詳細はFivetranのコスト最適化|MARの削減と契約プランの見直しを参照してください。
Cloud Run 内製 は、@kintone/rest-api-client(公式JS SDK)または Python で kintone REST API を叩き、Cloud Run と Cloud Scheduler で日次バッチを回して BigQuery に書き込む構成です。GCP 側の実費は月 数百円〜数千円で、10アプリ規模なら余裕を持って収まります。ただし、認証(APIトークン管理)、cursor API による大量取得、fileKey の2段階取得、スキーマ変更検知、削除レコードの補完、リトライ処理をすべて自作する必要があり、初期開発費は 30万〜80万円、保守工数も上乗せされます。GCPとPythonが触れるエンジニアが1人でもいる会社向けの選択肢です。
CData Sync は、kintone を含む200以上のデータソースを BigQuery や Snowflake などの DBに DB 同期する米国系 ETL ツールで、日本代理店を通じたライセンス販売もあります。GUI で SQL ライクなマッピングを組める点と、DB 型のフルレプリケーションが得意です。BigQuery 向けの公表価格は薄めですが、kintone のバックアップ用途で月3,000円規模の運用事例もあります。すでに CData 資産がある会社や、複数の DWH 移行を検討中の会社に向きます。サブテーブルは JSON 構造のまま保持されるため、BigQuery 側で UNNEST 展開が必要な点は要注意です。
cli-kintone + GCS は、サイボウズ公式の無料コマンドラインツール cli-kintone で kintone アプリを CSV エクスポートし、Cloud Storage 経由で BigQuery にロードする、最も軽量な構成です。kintone 側の追加費用はゼロ、GCP 側も月数十円で済みます。ただし、CSV 一括書き出しは 100,000 行または 100 MB が上限で、cli-kintone 内部でも REST API を使うため 10,000 リクエスト/日の制約に従います。差分同期には向かず、PoC や月次の監査用バックアップ、単発の分析用途向きの構成です。
kintone REST API の制限:設計時に必ず押さえるポイント
方式選定と並行して、kintone REST API の制限を先に押さえておかないと、稼働後に「業務側の kintone 画面が固まった」「日次バッチが翌朝落ちていた」といった障害を招きます。設計時に必ず確認したいのは、次の3点です。
アプリあたり日次リクエスト上限
- スタンダードコース:1アプリ 10,000リクエスト/日
- ワイドコース:1アプリ 100,000リクエスト/日
- カウント単位:アプリごと(ユーザー単位ではない)
- リセット時刻:JST 毎日 9:00(9:00〜翌8:59 が1日)
- 超過時:リクエスト自体はエラーにならず、翌朝 cybozu.com ストア管理者に警告メールが送信される
10アプリを cursor API(500件/リクエスト)で1日1回全件同期する規模なら、1アプリあたり数百リクエスト程度で余裕がありますが、時間単位で回したり、レコード数が数十万を超えるアプリが混じると、上限に近づきます。
ドメイン同時接続数
- ドメインあたり 100 同時リクエスト(ユーザー画面操作は含まない)
- 超過時は HTTP 429 が返り、ドメイン全体で REST API が失敗する(アプリ単位ではない)
これは特に注意が必要な制限で、複数バッチを並列実行して同時接続数を跳ね上げると、業務側のユーザーが kintone 画面を開けなくなります。並列度は必ずアプリ数の1/2程度に抑え、リトライ間隔も長めに取るのが安全設計です。
1リクエストあたりのレコード上限
- 通常 GET(offset 方式):500件/リクエスト、offset は最大10,000まで
- POST/PUT/DELETE(一括):100件/リクエスト
- cursor API(getRecordsCursor):500件/リクエスト、cursor は10分で失効
- リクエストボディ:50 MB 上限
10万レコード規模のアプリを全件取得する場合、offset 方式では10,000件までしか遡れないため、cursor API が事実上必須です。cursor は10分で失効するため、途中でリトライを挟む設計だと期限切れに注意が必要です。
費用相場:初期構築費と月額の目安
「結局いくらかかるのか」を先に押さえたい方向けに、方式別の初期・月額の目安を並べます。対象は「kintone スタンダードコース+アプリ10本+レコード数1万〜10万+日次または時間単位同期」の中小企業ケースを想定しています。
| 方式 | 初期構築費 | 月額運用費(連携部分) | BigQuery費用(別途) |
|---|
| trocco Free | 0円 | 0円(月2時間まで) | 数百〜数千円 |
| trocco Starter | 0円 | 月75,000円(30時間枠) | 数百〜数千円 |
| Fivetran | 50万〜150万円 | 月$500〜$1,500(MAR依存) | 数百〜数千円 |
| Cloud Run 内製 | 30万〜80万円 | 月2,000〜10,000円 | 数百〜数千円 |
| CData Sync | ライセンス費数万円/年〜 | 実費のみ | 数百〜数千円 |
| cli-kintone + GCS | 0円 | 月数百円 | 数百円 |
初期構築費には、要件整理・対象アプリ設計・スキーマ設計・変換ロジック(dbt等)・品質検証・ドキュメント整備までを含みます。trocco と cli-kintone は設定作業そのものは軽いですが、その周辺の設計工数は他方式と大差ありません。
BigQuery 側の実費は、10アプリ・レコード数10万規模で月数百〜数千円が中央値です。ストレージは論理 $0.02/GB/月、物理 $0.05/GB/月(東京リージョン、2026年目安)で、kintone レコードは1本あたり数百MB〜数GB程度に収まることが多く、費用の主役はクエリスキャン量です。分析ダッシュボードを毎日重く回すなら月1万円以上、月次バッチ中心なら月数百円で済みます。BigQuery のコスト削減の全体像はBigQueryの料金体系とコスト削減|課金トラップと対策にまとめています。
トータルの費用感の中央値は、小規模(10アプリ、日次)で 月8万円前後(trocco Starter+BQ)、内製で圧縮するなら 月1万円前後(Cloud Run+BQ、初期開発費除く)、複数SaaS横断で運用するなら 月10万〜20万円(Fivetran または trocco Essential)のレンジです。3年運用で総額100万〜1,000万円のオーダーになります。
選び方の判断軸:アプリ数・鮮度・技術資産・稟議
方式選定を先に決め打ちで進めると、後から「安く済ませようとしたら要件を満たせなかった」「高機能を選んだが持て余した」というミスマッチが起きます。次の4軸で自社の要件をチェックし、消去法で絞るのが実務的です。
軸1:対象アプリ数
- アプリ 3〜5本、PoC 段階:cli-kintone + GCS か trocco Free
- アプリ 10〜30本、日次同期:trocco Starter か Cloud Run 内製
- アプリ 50本以上、複数SaaS横断:Fivetran か trocco Essential
軸2:鮮度要件
- 日次または週次で足りる:どの方式でもOK。trocco Free / Starter が最安
- 時間単位:trocco Starter、Cloud Run 内製、Fivetran
- 分単位・秒単位:kintone REST API の同時接続制限(100/ドメイン)に注意。Change Data Capture 相当が必要なら Cloud Run+Webhook 連携の内製構成
軸3:社内の技術資産
- エンジニア工数なし、日本語サポート必須:trocco(Starter 以上)
- GCP と Python が触れるエンジニア1人以上:Cloud Run 内製 が最安・最柔軟
- 複数SaaSを英語系ツールで一元管理したい:Fivetran
- CData 資産あり、DB 同期に慣れている:CData Sync
軸4:稟議と契約事情
- 円建て請求書払い必須、稟議が厳しい:trocco 一択
- クラウド勘定科目で処理できる、$建てOK:Fivetran も選択肢
- 保守工数を自社で持てる、稟議は柔軟:Cloud Run 内製
- 単発利用、契約自体を避けたい:cli-kintone + GCS
この4軸で並べると、多くの中小企業は「trocco Starter または Cloud Run 内製」の2択に絞れ、複数SaaSを横断する大手は Fivetran、既存資産に合わせるなら CData、PoC は cli-kintone、という切り分けになります。ツール全体の比較観点はデータ連携ツールの選び方:コスト・サポート・コネクタ数で比較にまとめています。
実装の落とし穴:サブテーブル・添付ファイル・削除同期・ルックアップ
方式を決めたあとに詰まりやすい実装上の落とし穴を4つ挙げます。要件定義の時点で潰しておくと、稼働後の障害対応が大きく減ります。
サブテーブルの正規化方針
kintone のサブテーブルは、レコード JSON にネストされた配列で返ります。BigQuery 側の格納方法は2択で、①親テーブルと子テーブルに正規化して record_id で外部キー結合する、②REPEATED RECORD 型でネスト構造のまま保存し UNNEST で展開する、があります。SQL 分析のしやすさを優先するなら①、kintone UI と1対1で見せるダッシュボードを作るなら②が向きます。trocco は既定で①(親子2テーブル分離)ですが、内製や Fivetran は自作の判断が必要です。
添付ファイルの2段階取得と fileKey 失効
kintone のレコード API では、添付ファイルは fileKey(メタ情報)しか返らず、実ファイルは別途 /k/v1/file.json エンドポイントを fileKey 指定で追加リクエストする2段階取得が必要です。fileKey は 3日で失効 するため、日次バッチで発見当日中に Cloud Storage へ本体を退避する運用にします。BigQuery 側には gs:// パスと元ファイル名を保存し、分析時は Signed URL で一時発行するのが実務的です。
レコード削除の反映
kintone REST API には「削除されたレコード ID を返す」エンドポイントがないため、単純な増分同期だけを組んでいると BigQuery 側に古いレコードが残り続けます。対策は2つで、①日次または週次で全レコード ID を取得して BigQuery 側と差分突合し、消えた ID に削除フラグを立てる、②月次で全件フルリプレイスする、が実務的です。trocco は差分同期+週次全件リプレイスのテンプレートを組めますが、内製実装ではこの補完ロジックを忘れがちなので、要件定義で明示しておくと安全です。
ルックアップ値の陳腐化
kintone のルックアップは「参照時点でマスタから値をコピー」する仕様で、コピー後にマスタ側が更新されても、コピー先レコードは自動再取得されません。BigQuery 連携でもこのコピー値がそのまま転送されるため、たとえば顧客名が変わった場合、既存の商談レコードには古い顧客名が残ります。分析で「最新の顧客名で集計したい」場合は、コピー先のルックアップ値ではなくマスタアプリを別途連携し、BigQuery 側で JOIN して最新値を引き当てる設計にします。ダッシュボード数字がずれる原因になりやすいポイントです。
標準構成例:スモール/中規模/複数SaaS横断
具体的な構成イメージがつかめるよう、規模別に3パターン挙げます。
スモール:営業・案件管理の見える化(月1万円以下)
対象は kintone アプリ3〜5本(顧客/案件/問合せなど)、レコード数は各1万件規模、日次同期で BigQuery に載せて Looker Studio でダッシュボード化する構成。
- 連携:trocco Free(月0円、2時間枠)または cli-kintone + GCS(月数百円)
- 変換:BigQuery のスケジュールドクエリでシンプルな集計マート
- BI:Looker Studio(無料)
- 想定費用:初期20万〜50万円、月0〜数千円
kintone を導入して1〜2年目の中小企業で、まずは営業マネジメントの週次会議で「今週の受注/失注」を見たい段階の構成です。cli-kintone なら契約自体が不要なので、PoC でも稟議が通しやすくなります。
中規模:全社データ活用基盤(月8万〜10万円)
対象は kintone アプリ10〜30本、複数部門(営業・CS・製造・経理)で使うデータを横断で BigQuery に統合、dbt で共通の顧客テーブル・商品テーブルを整備して、Looker で全社ダッシュボードを提供する構成。
- 連携:trocco Starter(月75,000円、30時間枠)
- 変換:dbt Core(自前運用)または dbt Cloud(月$100〜$500)
- BI:Looker Studio Pro または Looker
- 想定費用:初期100万〜300万円、月8万〜15万円
kintone を「業務データベース」として複数部門で使い倒している中小・中堅企業がこのゾーンに入ります。trocco Starter の30時間枠は、10アプリ日次+主要3アプリ時間単位でも余裕を持って収まります。
複数SaaS横断:kintone+Salesforce+HubSpot 統合(月15万〜25万円)
kintone に加えて Salesforce・HubSpot・freee など複数SaaSのデータを BigQuery に統合し、部門横断の KPI ダッシュボードを Looker で提供する構成。営業×CS×マーケの3部門が同じ数字を見ながら意思決定する体制向けです。
- 連携:trocco Essential(月150,000円、250時間枠、ユーザー無制限)または Fivetran(月$1,000〜$3,000)
- 変換:dbt Cloud(月$500〜$1,500)
- BI:Looker(月$3,000〜)または Looker Studio Pro
- 想定費用:初期300万〜600万円、月20万〜40万円
このゾーンでは、稟議と円建て・複数コネクタ数のバランスで trocco Essential と Fivetran のどちらを選ぶかが分かれます。国内SaaS中心なら trocco、海外SaaS比率が高いなら Fivetran が有力です。
kintone→BigQueryを最短で立ち上げる4ステップ
方式を決めたあとの立ち上げは、次の4ステップで進めるとつまずきにくくなります。
ステップ1:対象アプリの絞り込み(1〜2週)
kintone にあるアプリを全部載せようとせず、経営会議・部門会議で実際に使われている数字を作るのに必要な5〜15本に絞ります。フィールドも、ダッシュボードで表示するカラムから逆算して選び、「連携するが誰も見ない」項目を作らないのが立ち上げ時の鉄則です。同時に、サブテーブル・添付ファイル・ルックアップの有無をアプリごとに一覧化し、後段の設計判断に使います。
ステップ2:連携ツールの選定と契約(1〜3週)
前節の4軸で方式を絞り、trocco の場合は Free プランで実データを1アプリ通してみます。無料で kintone→BigQuery が動くか、サブテーブルが期待通り分離されるか、を確認してから Starter に切り替えます。Cloud Run 内製の場合は、まず1アプリだけ Python スクリプトを Cloud Run で動かし、cursor API と fileKey 2段階取得を検証します。この段階で API 消費量を計測し、業務側ユーザーの kintone 画面速度への影響がないことを確認します。
ステップ3:BigQuery 側の設計と dbt 構築(2〜5週)
BigQuery に raw_kintone(連携そのままのテーブル)、stg_kintone(型変換・命名統一・サブテーブル展開)、mart_business(KPIマート)の3層を作り、dbt でモデルを整備します。この段階で、削除レコードの反映方針(差分突合か月次リプレイスか)と、ルックアップの陳腐化対策(マスタ連携+JOIN)を確定します。添付ファイルを扱う場合は GCS バケット設計と Signed URL 発行の仕組みも組みます。
ステップ4:ダッシュボード構築と業務移行(1〜3週)
Looker Studio または Looker で部門別ダッシュボードを構築し、既存の kintone 標準グラフや Excel レポートと1〜2週間並行運用して数字が一致することを確認します。並行期間を短くしすぎると「数字が合わない」という指摘で信頼を失うため、最低1週間は取ります。切替後、既存の kintone 標準グラフや Excel レポート運用は段階的に廃止します。
kintone×BigQuery 連携を検討したくなったら
kintone のデータを BigQuery に載せると、部門をまたいだ集計・時系列比較・BI ダッシュボード連携が一気に楽になります。ただし、方式選定・API 上限設計・サブテーブル正規化・添付ファイル運用・削除同期・ルックアップ対策と、要件定義の段階で決めておくべき論点は多く、選定を誤ると月額が予算の2〜3倍に跳ねたり、業務側の kintone 画面が重くなったりします。
Evast では、kintone を含む複数SaaS の BigQuery 統合基盤構築を、月次のスモールスタートから対応しています。「まず現状のアプリ棚卸しと方式選定だけ相談したい」「trocco と内製の見積比較を稟議に使いたい」といった段階からご相談いただけますので、お気軽にお問い合わせください。データ基盤全体の考え方はデータ基盤構築|Evast のデータ基盤構築サービスにまとめています。