Free tool
China Dependency Checker
Your site loads for mainland visitors, but the map area is blank and the video players are dead. The site itself is usually reachable — the third-party dependencies are what fail. This page is a filterable status view of the dependency verdicts behind that failure mode: each row condenses the verdict, replacement path, and deep-dive link from our blocked-APIs analysis. Use it as an audit checklist: scan your stack, flag the rows that match your dependencies, then follow the replacement path to the full write-up.
How this dependency table was built
Verdicts come from measurement you can run yourself. The colleague method: ask someone on a mainland connection to open your site and capture a HAR file or network-tab screenshot. Supplement it with the mainland test-point services — boce.com, 17ce.com, ping.chinaz.com, and itdog.cn. Global uptime monitors are no substitute: Datadog, Uptrends, and Checkly all publish their node lists, and none includes a mainland-China vantage point.
Every China-regulatory and vendor fact on chinagateway.pro traces to a primary source. To re-test any row against your own site, follow the full measurement procedure in How to test your website from China.
Dependency status table
Maps
| Dependency | China status | Replacement path | Deep dive |
|---|---|---|---|
| Google Maps | Blocked or unreliable in mainland China. Map tiles never load; the JavaScript SDK hangs. | Use Amap (Gaode Maps) or Baidu Maps for tiles, routing, and places data. Tencent Location Services (lbs.qq.com) for WeChat Mini Program contexts. SDK-level replacement, not a URL swap. | Blocked APIs → Maps |
Video
| Dependency | China status | Replacement path | Deep dive |
|---|---|---|---|
| YouTube | Fails or times out from mainland China (joint verdict with Vimeo). | Use domestic video hosts. Bilibili operates an official external embed player (player.bilibili.com). For production delivery, host files on mainland CDN-backed storage with a domestic player. | Blocked APIs → Video |
| Vimeo | Fails or times out from mainland China (joint verdict with YouTube). | Same as YouTube — domestic video host, Bilibili embed player, or mainland CDN-backed storage with a domestic player. | Blocked APIs → Video |
Fonts & tag managers
| Dependency | China status | Replacement path | Deep dive |
|---|---|---|---|
| Google Fonts / font CDNs, icon libraries, tag managers | Slow to unreachable from mainland China. | Self-host font files on your mainland server and update @font-face declarations. Google operates mainland mirrors: fonts.googleapis.cn (CSS API) and fonts.gstatic.cn (binaries). For tag managers, evaluate whether the global container is needed at all for China traffic — a China-specific tag path may be cleaner. |
Blocked APIs → Fonts & tag managers |
reCAPTCHA & forms
| Dependency | China status | Replacement path | Deep dive |
|---|---|---|---|
| Google reCAPTCHA | Default wiring loads from www.google.com/recaptcha/ and www.gstatic.com/recaptcha/ — both Google domains unreachable from mainland China. |
Google's official FAQ: when www.google.com is unreachable, use www.recaptcha.net. Replace www.google.com/recaptcha/api.js with www.recaptcha.net/recaptcha/api.js. For a domestic product, Alibaba Cloud CAPTCHA — not drop-in; the server-side verification call changes and the widget API differs. |
Blocked APIs → reCAPTCHA & forms |
Firebase
| Dependency | China status | Replacement path | Deep dive |
|---|---|---|---|
| Firebase | Depends on Google-hosted endpoints with no official mainland-China availability commitment. SDK modules load from www.gstatic.com/firebasejs/. |
Treat as a dependency to audit and replace or proxy. firebase.google.cn is a live official mirror, but Google publishes no mainland availability statement. Do not assume any Firebase service works in China without testing from a mainland session. Identify a mainland-reachable alternative per feature. |
Blocked APIs → Firebase |
Payments
| Dependency | China status | Replacement path | Deep dive |
|---|---|---|---|
| Stripe & global payment gateways | Global payment gateways fail behind the firewall. | WeChat Pay is the canonical China-accessible replacement. Stripe's official docs list WeChat Pay as a supported payment method for cross-border acceptance — one-time payments supported (subscriptions not yet), CNY presentation available. This is a cross-border path, not a mainland acquiring setup. | Blocked APIs → Stripe & checkout |
The decision rule
For each dependency on your stack, apply the rule from our blocked-APIs analysis:
If the SDK requires direct client-side access to the foreign service, replace. If it is a static asset, proxy or self-host. If the feature is optional for China traffic, remove it from the China path entirely.
What this table does not cover
This table includes every dependency with a banked per-vendor verdict on the site. It does not include categories where only class-level wording exists or no verdict is banked:
- Analytics vendors (Google Tag Manager, Google Analytics, Segment) — class wording only; no per-vendor reachability verdict banked.
- Auth beyond Firebase (SSO, OAuth providers, Auth0) — no banked verdicts.
- Email delivery (SendGrid, Mailgun, etc.) — no banked verdicts.
- CMS platforms (Contentful, Storyblok, etc.) — no banked verdicts.
The blocked-APIs deep dive carries the class-level wording where it exists; for auth beyond Firebase, email, and CMS, nothing is banked yet.
Next steps
The dependency audit is a named deliverable in our infrastructure service. We map every external domain your site calls, classify each as works / slow / blocked from mainland China, and produce the replacement table your engineering team executes against.
If you want to run the initial scan yourself first, the 10-point China readiness diagnostic carries the dependency checks at items 5–7.
Infrastructure service · China readiness diagnostic · hello@chinagateway.pro
Frequently asked questions
Why do these dependencies fail for mainland visitors?
The Great Firewall filters many global internet services — requests to filtered services are not answered. It is one of three compounding causes that make websites slow or broken for mainland visitors, alongside congested cross-border transit and DNS resolution outside the country.
The result is a dependency-level problem, not a whole-site problem: Google Maps, YouTube, Vimeo embeds, global font hosts, icon libraries, tag-manager endpoints, and auth or payment APIs can all fail behind the firewall while the rest of the page loads around the gap. A render-blocking script in the <head> stalls the whole page; an async embed leaves a hole where the feature should be.
Can't we just tell users to use a VPN?
No. A VPN shifts the burden onto every individual user — it is not a fix for the people you are trying to reach, and it is not something a business can require of its customers. The fix belongs on your infrastructure: replace or proxy each blocked dependency.
How were these verdicts made, and why isn't my vendor listed?
Verdicts come from measurement you can run yourself: the colleague method — someone on a mainland connection opens your site and captures a HAR file or network-tab screenshot — supplemented with the mainland test-point services (boce.com, 17ce.com, ping.chinaz.com, and itdog.cn). Global uptime monitors are no substitute: Datadog, Uptrends, and Checkly all publish their node lists, and none includes a mainland-China vantage point.
The table includes every dependency with a banked per-vendor verdict on the site; analytics vendors carry class-level wording only, and for auth beyond Firebase, email delivery, and CMS platforms nothing is banked yet. The blocked-APIs deep dive carries the class-level wording where it exists.
Flagged rows across your stack?
The infrastructure service runs the dependency audit as a named deliverable, and the 10-point China readiness diagnostic carries the dependency checks at items 5–7.
hello@chinagateway.pro