ECサイト|2026.09.30

「ムラサキスポーツ」トップページの表示速度ボトルネック研究

公開CDNから読み込むSwiper、ブラウザ上でCSSを生成するTailwind CSS Play CDN、head内の同期スクリプトなどのボトルネックが観測され、解消シミュレーションではLighthouseスコアが72から最大100まで変化しました。Core Web Vitalsの大幅な改善が期待できます。

ムラサキスポーツ

https://www.murasaki.jp/|調査日: 2026-09-14

より詳しいレポートについてはこちらを参照ください。

この研究は自主的に実施したものであり、サイト関係者からの依頼によるものではありません。掲載の取り下げを希望される場合はお問い合わせください。

ムラサキスポーツ

サーフィン・スノーボード・スケートボードの専門店として知られるムラサキスポーツの公式オンラインストアです。ボードスポーツのギアから、アパレル・シューズまでを幅広く取り扱い、スクールやイベント、ライダー、店舗の最新情報も発信しています。モバイル環境での表示速度について、どのような要素がボトルネックとなっているのかを研究するため、解消シミュレーションを実施しました。

Core Web Vitalsにつながる指標の改善ポテンシャル ​

観測されたボトルネックを仮に解消した場合、Lighthouse スコアは以下のような変化を示しました。

観測時点解消シミュレーション後
観測時点のLighthouseスコア解消シミュレーション後のLighthouseスコア
指標観測時点解消シミュレーション後変化量
総合スコア72100+28
LCP4.2秒0.1秒-4.1秒
FCP3.2秒0.1秒-3.1秒
SI8.2秒0.6秒-7.6秒
TBT3ms0ms-3ms
CLS0.0200.000-0.020

LCP(Largest Contentful Paint = ページの主要コンテンツが表示されるまでの時間)は4.2秒から0.1秒へ、FCP(First Contentful Paint = 最初のコンテンツが表示されるまでの時間)は3.2秒から0.1秒へ、SI(Speed Index = ビューの視覚的な表示進捗の速さ)は8.2秒から0.6秒へと、いずれも大きく変化するシミュレーション結果が得られました。

数値を読むうえで、計測条件について2点補足します。1点目は、この研究の Lighthouse は CPU の減速をかけずに計測しているため、TBT(Total Blocking Time = メインスレッドのブロック時間)が観測時点からほぼ0msになっていることです。メインスレッドの負荷は、CPU を4倍に減速した別の計測で評価しています(ボトルネック2で扱います)。2点目は、Lighthouse の推定値には HTML の応答時間(約660ms)がほとんど反映されないことです。実際のブラウザで計測した解消シミュレーション後の表示開始(FCP = LCP)は0.75秒で、その約9割をこの応答時間が占めていました。

また、観測時点の CLS(Cumulative Layout Shift = ページ読み込み中のレイアウトのずれ)0.020の大半は、記録したページを再生する環境の不具合で、本番のサイトには存在しないずれでした。研究の途中でこの不具合を修正し、以降は本番どおりの表示で計測しています。

読み込みプロセスの変化を動画で体験 ​

観測時点とボトルネック解消シミュレーション後のページ読み込みを並べると、体感的にも明確な違いが見て取れます。動画は、通信速度約10Mbps・CPU 4倍減速というモバイル相当の条件で録画しています。

項目観測時点解消シミュレーション後
転送量32.24MB4.43MB
DOMContentLoaded3.1秒1.5秒
読み込み完了30秒以内に完了せず4.3秒

観測時点のページは、サードパーティタグと大きな画像の読み込みが続き、30秒たっても読み込みが完了しませんでした。

サードパーティータグの影響 ​

本研究ではまず、サードパーティータグを段階的に除去することで、タグ全体が表示速度に与えている影響を観測しました。あわせて、タグ由来のノイズを取り除くことで、サイト自体のボトルネックを観察しやすくする狙いもあります。タグを完全に除去することは現実的でないものの、最適化によってどこまでの改善ポテンシャルがあるかを把握する材料としてご覧ください。

本セクションは「サードパーティータグがページスピードに影響を与えている」という現実を数値で示すとともに、それらを最適化することでどれだけのスピード改善ポテンシャルがあるかを示唆するものです。

リソース数の内訳(サイト固有 vs サードパーティタグ)

オリジナルページの全454リソースのうち、サイト固有のリソースは314件(約7割)、サードパーティタグ由来のリソースは140件(約3割)を占めていました。13種類のタグの中には、DMP の AudienceSearch が別の Google Tag Manager コンテナを読み込み、そこから広告タグが連鎖的に発火する構造や、Meta Pixel と Google Analytics 4 が HTML への直書きと Google Tag Manager の両方から重複して読み込まれる構造がありました。

HTMLから直接読み込まれているタグ ​

タグ名種別
Google Tag Manager(GTM-NNX7DH8)タグマネージャー
Google Analytics 4(gtag.js の直書き)アクセス解析
Google Analytics(Universal Analytics)アクセス解析
Meta Pixel広告計測
Evergage(Salesforce Marketing Cloud Personalization)パーソナライズ・行動解析
A8.netアフィリエイト計測
AudienceSearchDMP
probo POPLINK検索サジェスト
YouTube IFrame Player API(埋め込み15本)動画プレーヤー
Salesforce Marketing Cloud の Cookie 保存スニペットマーケティング連携
Benent 計測スニペット動画コマース計測

タグやCDNを経由して読み込まれているタグ ​

タグ名経由種別
Google Analytics 4GTM-NNX7DH8アクセス解析
Google Ads(リマーケティング・コンバージョン)GTM-NNX7DH8広告計測
Meta Pixel(2つ目)GTM-NNX7DH8広告計測
Google Analytics(Universal Analytics)GTM-NNX7DH8アクセス解析
Google Tag Manager(GTM-K4DJV5PZ)AudienceSearchタグマネージャー
Floodlight(DV360)、Google Ads、The Trade DeskGTM-K4DJV5PZ広告計測
広告ネットワークの Cookie 同期GTM-K4DJV5PZ広告連携
Cloudflare Bot ManagementCDN による注入ボット検知
Cloudflare Web AnalyticsCDN による注入アクセス解析

除去シミュレーションの結果 ​

除去段階総合スコアLCPSI変化のポイント
観測時点(タグあり)724.2秒8.2秒-
YouTube IFrame Player API 除去714.5秒9.0秒60件のリソースが消える(本番では約215リクエスト)
Evergage 除去773.6秒10.0秒FCP が0.5秒短縮
A8.net 除去764.3秒7.8秒影響は揺らぎの範囲
AudienceSearch と配下のタグを除去823.3秒8.3秒33件のリソースが消える
Meta Pixel 除去863.1秒6.2秒SI が2.1秒短縮
Cloudflare Bot Management 除去893.2秒4.1秒SI が2.1秒短縮
Cloudflare Web Analytics 除去893.2秒4.0秒影響軽微
probo POPLINK 除去942.7秒3.5秒LCP が0.5秒短縮
Cookie 保存スニペット・Benent 除去942.8秒2.8秒影響は揺らぎの範囲
Google Analytics(UA)除去913.0秒4.0秒影響は揺らぎの範囲
Google Analytics 4(直書き)除去942.9秒3.2秒SI が0.8秒短縮
Google Tag Manager と配下のタグを除去962.6秒2.7秒外部の計測・広告通信が消える

このフェーズでは、同じ状態でも 総合スコア や LCP・SI が大きく揺れていたため、個々の段階の差よりも、タグ全体の除去による累積の変化が主な評価の対象です。head 内で同期読み込みされていた Evergage と A8.net は、それぞれ400ms以上のレンダリングブロックと推定されていました。サードパーティータグを全て除去した状態では、総合スコア は72から96へ、LCP は4.2秒から2.6秒へ、SI は8.2秒から2.7秒へと変化する結果が得られました。これはあくまで上限値であり、実際にはこの一部しか実現できないとしても、サードパーティータグの最適化には無視できない改善ポテンシャルがあることが読み取れます。

サイト固有のボトルネック ​

サードパーティータグの影響を切り離した状態を起点として、サイト固有のボトルネックを調査しました。本研究では全47件のボトルネック仮説を検証しました。その中から、特に影響の大きかった3件を紹介します。

ボトルネック1: スライダーのSwiperを公開CDNから読み込んでいる ​

観察された状況 ​

このページは、ファーストビューのメインビジュアルをはじめ、多数のスライダーに Swiper を使っています。その CSS と JavaScript を、head から公開 CDN の cdn.jsdelivr.net で読み込んでいました。CSS はレンダリングをブロックし、JavaScript は同期読み込みのため HTML の解析を止めます。どちらも描画の前に必要なリソースでありながら、別ドメインへの新しい接続(DNS・TCP・TLS)の確立に約400msを要していました。Lighthouse は Swiper の CSS によるレンダリングブロックを418msと推定していました。

描画の前に別ドメインへの接続が必要になる構造
描画の前に別ドメインへの接続が必要になる構造

解消シミュレーションの方法 ​

同じバージョンの Swiper の CSS と JavaScript を、自社ドメイン(www.murasaki.jp)から配信した状態を計測しました。ファイルの中身は変えておらず、すでに確立済みの HTTP/2 接続をそのまま使えるようになります。

シミュレーション結果 ​

指標解消前解消後変化量
総合スコア98100+2
LCP2.3秒1.9秒-0.4秒
FCP1.4秒0.9秒-0.5秒
SI2.2秒1.9秒-0.3秒

FCP は1.4秒から0.9秒へと約35%短縮され、Lighthouse のレンダリングブロックの指摘からも Swiper の CSS が消えました。ファイルの中身を一切変えずに配信元のドメインを変えただけのシミュレーションでこれだけの変化が生じたことから、描画の前に別ドメインへの接続を必要とする構造が、表示開始を大きく遅らせていたことが読み取れます。

ボトルネック2: Tailwind CSS Play CDNがブラウザ上でCSSを生成している ​

観察された状況 ​

head では、cdn.tailwindcss.com から Tailwind CSS Play CDN のスクリプトを同期読み込みしていました。これはページ内のクラス名をブラウザ上で調べ、その場で CSS を生成する開発用のスクリプトで、Tailwind の公式も本番環境での利用を想定していません。このスクリプトは次の3つの処理でメインスレッドを使っていました。

  • スクリプト自体の評価(約32ms)
  • HTML の解析中に、読み込まれた要素のクラスから CSS を生成する処理
  • DOM の変化を MutationObserver で監視し、スライダーの自動再生などでクラスが変わるたびにページを再走査する処理

CPU を4倍に減速した計測では、解析中の CSS 生成が約121msのロングタスクになっていました。先に行った初期化処理の分割の後に残る、最大のタスクでした。

解消シミュレーションの方法 ​

Tailwind CLI で、このページと自社の JavaScript が使うクラスだけを含む CSS(17,206バイト)を事前にビルドし、Play CDN が実行時にスタイルを挿入していたのと同じ位置(head の末尾)に置いた状態を計測しました。body 内の全要素(2,561件)の計算済みスタイルを、読み込み後・スクロール後・メニュー表示・検索表示の4つの状態で比較し、見た目の差が0件であることを確認しています。

シミュレーション結果 ​

指標解消前解消後変化量
総合スコア9698+2
LCP2.6秒2.2秒-0.4秒
FCP1.8秒1.4秒-0.4秒
SI2.8秒2.7秒-0.1秒
補助指標(CPU 4倍減速)解消前解消後変化量
TBT 相当値(3回平均)136ms53ms-83ms
ロングタスクの件数7〜8件3〜4件約半減

CPU 4倍減速で計測した TBT 相当値は約6割減り、同時にレンダリングをブロックするスクリプトが1つ減ったことで、FCP と LCP もそれぞれ0.4秒短縮される結果が得られました。スタイルをブラウザ上で組み立てる仕組みが、メインスレッドの負荷と表示開始の遅れの両方を生んでいたことが読み取れます。

なお、このスクリプトは記録したページを再生する環境でも壊れやすく、観測時点の計測では Tailwind のスタイルが1つも生成されていませんでした。冒頭で触れた CLS の不具合はこれが原因で、研究の途中で修正しています。

ボトルネック3: head内の同期スクリプトが最初の描画を止めている ​

観察された状況 ​

このページの LCP 要素は、ファーストビューのキャッチコピー「RIDE LIFE」のテキストです。メインビジュアルの画像は画面全体を覆う背景のため LCP の候補にならず、LCP は最初の描画のタイミングで決まっていました。

head には同期読み込みの JavaScript が置かれていました。HTML の到着後、特に Swiper の JavaScript の到着を待つ間の約330ms、ブラウザは HTML の解析と最初の描画を止めていました。ページ内の <script> 要素は54件(外部26件・インライン28件)ありました。

解消シミュレーションの方法 ​

54件の <script> 要素を、出現順を保ったまま </body> の直前へ移動した状態を計測しました。移動後も、17か所のスライダーの初期化、メニュー、検索が動作し、ページエラーがないことを確認しています。このシミュレーションはスクリプトの実行タイミングが変わることを前提に行いました。

シミュレーション結果 ​

指標解消前解消後変化量
LCP0.17秒0.10秒-0.07秒
SI0.7秒0.5秒-0.2秒
実測の LCP(5回の中央値)1.2秒0.8秒-0.4秒

この時点で 総合スコア はすでに100で、Lighthouse の推定値の変化は小さくなっています。一方、実際のブラウザで計測した LCP は1.2秒から0.8秒へと約32%短縮されました。CSS が届いた直後に最初の描画が行われるようになり、スクリプトの到着を待たなくなったためです。

このシミュレーションは、画面外の画像の遅延読み込みを整える前にも試しています。そのときは、HTML の解析が早く body に進むことで画面外の画像(約20MB)の要求が前倒しされ、SI の推定値がかえって悪化しました。スクリプトの配置と画像の読み込みが互いに影響し合い、1つのボトルネックが別のボトルネックの影響を隠していたことが読み取れます。

まとめ ​

ムラサキスポーツのトップページでは、観測時点で 総合スコア が72でした。スコアの内側を観察すると、次のようなボトルネックが表示速度に影響していました。

  • サードパーティータグ(13種類・140リソース): 除去によって 総合スコア が72から96へ、SI が8.2秒から2.7秒へ変化。DMP が別の Google Tag Manager コンテナを読み込む連鎖や、計測タグの重複設置も見られました。
  • 公開CDNから読み込むSwiper: 自社ドメインからの配信に置き換えることで FCP が約35%短縮。別ドメインへの接続が描画の前提になっていました。
  • Tailwind CSS Play CDN: ビルド済みの CSS に置き換えることで、CPU 4倍減速での TBT 相当値が136msから53msへ、FCP が0.4秒短縮。ブラウザ上でのスタイル生成が、メインスレッドと描画開始の両方を圧迫していました。
  • head内の同期スクリプト: body 末尾へ移すことで実測の LCP が約32%短縮。スクリプトの到着待ちが最初の描画を止めていました。

この他にも、Webフォントの CSS がレンダリングをブロックしていたボトルネックでは、Google Fonts の CSS を非同期にすると FCP が0.6秒から0.2秒へ、Adobe Fonts の CSS を非同期にすると LCP が2.0秒から0.8秒へ変化する結果が得られています。表示サイズよりはるかに大きな画像(幅2,000〜3,000pxの写真を247px幅で表示するなど)を縮小するシミュレーションでは、ページ全体の転送量が約3分の1になりました。

なお、全ボトルネックの解消シミュレーション後も、実際のブラウザで計測した表示開始0.75秒のうち約0.66秒(約89%)は、HTML のサーバー応答時間でした。CDN で HTML がキャッシュされず、ASP.NET がリクエストごとに HTML を生成しているため、フロントエンドの変更では短縮できない部分として、今回のシミュレーションには含めていません。実際のユーザーの体感速度を左右する要因として残っていることが観測されました。

ムラサキスポーツ

https://www.murasaki.jp/|調査日: 2026-09-14

より詳しいレポートについてはこちらを参照ください。

この研究は自主的に実施したものであり、サイト関係者からの依頼によるものではありません。掲載の取り下げを希望される場合はお問い合わせください。

ムラサキスポーツ
参考になりましたか? ぜひシェアしてください!

関連記事

「ピーチ・ジョン」トップページの表示速度ボトルネック研究
ECサイト2026.10.01

「ピーチ・ジョン」トップページの表示速度ボトルネック研究

Google Tag Manager配下のサードパーティータグ、画像の寸法指定漏れ、別ドメインから配信されるWebフォントのCSSなどのボトルネックが観測され、解消シミュレーションではLighthouseスコアが43から最大100まで変化しました。Core Web Vitalsの大幅な改善が期待できます。

「ナチュラム」トップページの表示速度ボトルネック研究
ECサイト2026.09.29

「ナチュラム」トップページの表示速度ボトルネック研究

自社アクセス解析JavaScriptの同期読み込み、CSSの読み込み待ちで遅れるポップアップの表示などのボトルネックが観測され、解消シミュレーションではLighthouseスコアが66から100へ、実測のLCPが4.1秒から1.1秒へ変化しました。Core Web Vitalsの大幅な改善が期待できます。

「しまむらパーク」トップページの表示速度ボトルネック研究
ECサイト2026.09.28

「しまむらパーク」トップページの表示速度ボトルネック研究

JavaScriptの初期化まで表示されないメインビジュアル、高さが確保されていないカルーセル、埋め込みフレームでのスクリプトの重複実行などのボトルネックが観測され、解消シミュレーションではLighthouseスコアが51から最大100まで変化しました。Core Web Vitalsの大幅な改善が期待できます。

「ベルメゾンネット」トップページの表示速度ボトルネック研究
ECサイト2026.09.27

「ベルメゾンネット」トップページの表示速度ボトルネック研究

初期化前のカルーセルが高さを持たない構造、1秒を超えるHTMLの応答待ち、CDNにキャッシュされない画像などのボトルネックが観測され、解消シミュレーションではLighthouseスコアが58から最大100まで変化する結果が得られました。Core Web Vitalsの大きな改善が期待できます。

「アットコスメショッピング」トップページの表示速度ボトルネック研究
ECサイト2026.09.26

「アットコスメショッピング」トップページの表示速度ボトルネック研究

検索サジェストの同期読み込み、HTMLのサーバー応答の遅さ、決済用iframeによる読み込み完了の遅延などのボトルネックが観測され、これらを解消するシミュレーションではLighthouseスコアが82から最大100まで変化する結果が得られました。Core Web Vitalsの大きな改善が期待できます。

「SHIROHATO(白鳩)」トップページの表示速度ボトルネック研究
ECサイト2026.09.25

「SHIROHATO(白鳩)」トップページの表示速度ボトルネック研究

Google FontsのCSSによるレンダリングブロック、JavaScriptで確定するヘッダーの高さ、カルーセルの初期化前レイアウトの未定義などのボトルネックが観測され、解消シミュレーションではLighthouseスコアが96から最大100へ変化しました。Core Web Vitalsには隠れた改善余地があります。

「ゲオオンラインストア」トップページの表示速度ボトルネック研究
ECサイト2026.09.24

「ゲオオンラインストア」トップページの表示速度ボトルネック研究

jQueryなどを公開CDNから読み込む描画ブロックリソース、head内の同期スクリプト、商品カルーセルの一括初期化などのボトルネックが観測され、解消シミュレーションではLighthouseスコアが96から最大100まで変化する結果が得られました。Core Web Vitalsの若干の改善が期待できます。

「ポリピュアEX」トップページの表示速度ボトルネック研究
ECサイト2026.09.23

「ポリピュアEX」トップページの表示速度ボトルネック研究

画像・CSS・JSをHTTP/1.1の別ドメインから配信、画像のサイズ未指定、トップページの302リダイレクトなどのボトルネックが観測され、解消シミュレーションではLighthouseスコアが90から100まで変化しました。Core Web VitalsのLCPとCLSに大きな改善が期待できます。