1分で読了チュートリアル

カレンダー追加リンク:どこでも機能するものを作る

カレンダー追加リンクは、イベント情報をクエリ文字列に含めたプロバイダーURLか、ホストされた.icsファイルのどちらかです。両方を正しく実装する方法と、タイムゾーンの落とし穴を解説します。

Ana Kowalska
Marketing solutions engineering
カレンダー追加リンクがGoogle Calendar、Outlook、そしてApple Calendar向けにホストされたicsファイルへ分岐する様子

カレンダー追加リンクには2種類しかありません。1つは、イベント全体をクエリ文字列に含めたプロバイダーURLで、クリックするとGoogle Calendar、Outlook、Yahooのいずれかで入力済みのイベントが開きます。もう1つは、ホストされた.icsファイルで、Apple Calendarをはじめほぼすべてのデスクトップクライアントがインポートできる標準的なカレンダー形式です。第3の仕組みは存在せず、誰にでも通用する単一のURLもありません。

多くのガイドがこの部分を素通りしますが、ここが作り方全体を左右します。混合的なB2Bオーディエンス向けのウェビナー確認メールなら、少なくともGoogleリンク、Outlookリンク、.icsの3つが必要です。コンシューマー向けのイベントなら1つで済むこともあります。このガイドでは両方の仕組み、報告されるバグの大半の原因となるタイムゾーン形式、そしてこの全体を印刷・短縮・計測できる1本のリンクの裏に収める方法を扱います。イベントリンク全体の大きな絵については、イベント向けURLショートナーがバッジ、サイネージ、フォローアップを解説しています。

2つの仕組み、1つではない

プロバイダーURLは、Webカレンダーの「新規イベント」画面へのディープリンクにすぎず、フィールドはクエリ文字列から埋められます。受信者が保存するまでどこにも何も保存されないため、リンクは永久に機能し、ホスティングコストはかからず、確定する前に本人が編集することもできます。

.icsファイルは交換形式であり、RFC 5545のiCalendarとして標準化されています。イベントを記述するプレーンテキストファイルで、カレンダークライアントがこれを解析してインポートを提案します。プロバイダーリンクが機能しない場所、特にApple Calendarや多くの企業用デスクトップクライアントで機能し、繰り返しルールや主催者アドレスといった要素をきれいに運べるのは2つのうちこちらだけです。

1本の短縮リンクがGoogle CalendarのテンプレートURL、Outlookのディープリンク、そしてApple Calendar向けにホストされたicsファイルへ分岐する図

Google Calendarリンク

テンプレートURLはイベントをパラメータとして受け取ります。Googleはこの機能をイベント作成として文書化しており、このリンク形式は業界全体がその上に構築するほど安定しています。

https://calendar.google.com/calendar/render?action=TEMPLATE
  &text=Product+webinar
  &dates=20260910T140000Z/20260910T150000Z
  &details=Join+us+for+the+spring+release+walkthrough
  &location=https://example.com/webinar
  &ctz=Europe/Berlin

ここで重要なのは4点です。datesは句読点を取り除いた基本ISO 8601形式で、開始と終了をスラッシュでつなぎ、末尾のZはUTCを意味します。ctzは、代わりにローカルタイムでイベントを開きたい場合にタイムゾーンを指定します。detailsは限られた文字数しか受け付けず、一部のクライアントは切り詰めるため、要点を先に書きます。そしてすべての値はURLエンコードする必要があり、手作業で組み立てたリンクが壊れるのはたいていここです。イベントタイトルにアンパサンドが含まれていると、それ以降がすべて黙って切り詰められます。

Outlook、Office 365、Yahoo

Outlookには2つの異なるホストがあり、これが常に人々を悩ませています。個人アカウントはoutlook.live.com、職場および学校アカウントはoutlook.office.comにあり、一方向けに作られたリンクはもう一方のユーザーにサインイン画面を表示してしまいます。オーディエンスが混在している場合は両方を用意するか、どちらでも気にしない.icsファイルに頼りましょう。

Yahooも同様のディープリンク形式を採用していますが、独自のパラメータ名を使います。コンシューマー向けオーディエンスには含める価値がありますが、B2Bでは省略しても問題ありません。

.icsファイルと、それを壊す1つのヘッダー

ファイル自体は短く - 人が思っているよりも短いです。最小限の有効なイベントはおよそ10行です。カレンダーのラッパー、1つのVEVENT、UID、タイムスタンプ、開始と終了、そして概要です。

text/calendarとして配信します。 text/plainとして配信された.icsはブラウザのタブに生のテキストとして開き、技術に詳しくない受信者にはまったく壊れているように見えます。これがこの形式で最もよくあるホスティングのミスです。一部のクライアントはヘッダーではなく拡張子を見て判断するため、ファイル名も.icsで終わらせるべきです。

最初から正しくしておく価値がある、もう2つの詳細があります。末尾にZを付けたUTCのタイムスタンプはサマータイムに関するあらゆる議論を避けられます。ローカルタイムを使わざるを得ない場合は、うまくいくことを期待するのではなくVTIMEZONEブロックを含めてください。そしてイベントごとに安定したUIDを持たせておけば、同じファイルの後のバージョンが重複を作るのではなく既存のエントリを更新します。これはウェビナーを1時間ずらさなければならない日に効いてきます。

印刷・短縮・計測できる1本のリンク

ここで、2つの仕組みは技術的な詳細であることをやめ、キャンペーンの問題になります。3つのプロバイダーリンクにファイルダウンロードを加えると4つのURLになり、4つのURLはポスターにも、印刷された招待状にも、QRコードの裏にも収まりません。

解決策は、選択肢を提示する1つの小さなページを指す1本の短縮リンクです。そのページは新規に作る必要はなく、イベントページの一部で構いません。これにより、あらゆるチャネルを乗り切る1つのアドレスが手に入ります。メール用に短縮し、バッジに印刷し、会場のサイネージ用にQRコードに変換し、イベント終了後は録画へと宛先を変更できます。この最後の性質こそ、後になってありがたみが分かるものです。印刷物は、それが宣伝していたイベントよりも長く残るからです。

計測も同じ形をとります。メール、SNS投稿、印刷サインにそれぞれ同じページへの専用短縮リンクを持たせれば、クリック数からどのチャネルが実際に意図を生んだかが、他のキャンペーンと同じ表の中でわかります。誰かのカレンダーの中で何が起きたかは見えないため、ここで正直な数字はクリック数と登録数の2つだけです。他のすべてと並べてカウントしたいならワークスペースを開設して自分のドメインにリンクを置きリンクアナリティクスで確認してください。

カレンダーの選択肢ページへの1本の短縮リンクが、メール、SNS投稿、印刷されたQRコードで使われ、クリック数が登録数と比較される図

作り手ではなく、受信者としてテストする

4つのチェックでほぼすべてを捕捉できます。どれも1分もかかりません。

  1. スマートフォンとデスクトップの両方でリンクを開き、個人アカウントと職場アカウントの両方があるならその両方で確認します。Outlookのホスト分裂はここ以外では表面化しません。
  2. 自分のものではないタイムゾーンで、出来上がったイベントを確認します。2つ離れたタイムゾーンにいる同僚に頼むのが最も速いテストで、システムの時計を手動で変更する方法でも構いません。
  3. .icsがテキストとして開くのではなく、カレンダーアプリを起動することを確認します。これはContent-Typeが正しいことを意味します。
  4. 保存後にイベントがどう表示されるかを読みます。説明文が切り詰められていることや、locationフィールドにクリックできないURLが入っていることはどちらもよくある問題で、送信前にどちらも修正できます。

私が痛い目に遭ったのはタイムゾーンです。リンクを作った本人には正しく表示され、オーディエンスの半分には1時間ずれて表示されるウェビナーは、送信する側からは気づけません。自分のカレンダーには意図した通りのものが正確に表示されるからです。2000人に送る前に、別の国にいる誰かに確認してもらいましょう。

コーナーストーンシリーズを読む

この記事はチュートリアルクラスターに属しています。イベント構築の全体像については、イベント向けURLショートナーが登録からフォローアップまでを、QRコードキャンペーンをゼロから作るが印刷物の半分を解説しています。

ブログの関連記事

よくある質問

カレンダー追加リンクはどうやって作成しますか。

方法は2つあり、ほとんどのイベントで両方が必要です。Google Calendar、Outlook、Yahooの場合は、イベント情報をクエリ文字列にエンコードしたプロバイダーURLを作成します。これによりワンクリックでその人のカレンダーに入力済みのイベントが開きます。Apple Calendarなどそれ以外の場合は、.icsファイルをホストします。これはどのクライアントでもインポートできる標準的なカレンダー形式です。どちらか一方だけではすべての受信者をカバーできません。

すべてのカレンダーで機能する単一のリンクはありますか。

プロバイダーリンクとしては存在しません。各プロバイダーが独自のURL形式を持ち、Appleにはそもそも存在しないからです。最も近い解決策は、3つか4つの選択肢を提示する小さなページを指す1本の短縮リンクです。これなら印刷、短縮、計測に使える単一のURLも手に入ります。次善の単一の答えはホストされた.icsファイルで、ほとんどのデスクトップクライアントがこれをインポートできます。

Google Calendarリンクで使う日時はどのような形式ですか。

UTCの基本ISO 8601形式で、句読点なし、開始と終了をスラッシュでつなぎます:20260910T140000Z/20260910T150000Z。代わりに指定したタイムゾーンでイベントを開きたい場合はctzパラメータを使います。ここを間違えることが、カレンダー追加リンクが1時間ずれたイベントを作ったり、日付変更線をまたぐ受信者にとって日付が違ってしまったりする最も多い原因です。

.icsファイルをテキストとしてダウンロードさせず、開かせるにはどう配信すればよいですか。

Content-Typeをtext/calendarにし、ファイル名を.icsで終わらせて配信します。text/plainとして配信されたファイルはカレンダーアプリを起動する代わりに、ブラウザのタブに文字化けとして開いてしまいます。これが最もよくあるホスティングのミスです。この形式自体はRFC 5545で定義されており、最小限の有効なファイルはおよそ10行です。

何人がイベントを追加したか計測できますか。

クリックした人数であれば計測でき、これが利用可能な最も近い代替指標です。短縮リンクへのクリックは計測できますが、その後その人のカレンダーの中で何が起きたかはまったく見えません。チャネルごとに専用のリンクを用意し、クリック数と登録数を比較し、その差はリンクが壊れているのではなく、コンバージョンしなかった意図として扱いましょう。

カレンダーリンクは確認メールとリマインダーのどちらに入れるべきですか。

両方に入れるべきで、同じリンクを使い回して構いません。確認メールは意図が最も高いタイミングで、リマインダーは最初のメールを無視した人が行動するタイミングなので、繰り返しても何のコストもかかりません。一度短縮したリンクをすべてのメッセージで使い回せば、送信ごとの数字ではなく、キャンペーン全体で1つの数字が得られます。

Elidoを試す

URLを貼り付けて短縮リンクを取得

登録不要。リンクは30日間有効。永久に保存するには登録してください。

Free、登録不要 · 1日あたり2件

Elidoを試す

EUホスティングのURL短縮サービス。カスタムドメイン、詳細な分析、オープンAPI付き。無料プラン - クレジットカード不要。

タグ
add to calendar link
google calendar link
ics file
event link
webinar registration
short link

続きを読む