Chinese Web Font Stack Generator
Choose your target script and style to generate a correct, ready-to-use CSS font-family stack — with proper PingFang, Microsoft YaHei/JhengHei, and Noto Sans fallbacks in the right priority order. No signup, works in your browser.
Build your font stack
This preview renders using whatever font is actually installed on your device — it will look different for every visitor depending on their operating system, which is exactly the situation this font stack is designed for.
Why the font order matters
A font-family declaration is a priority list, not a single choice — the browser walks down it and uses the first font it can actually find installed on the visitor's system. Getting the order right matters: PingFang SC/TC/HK covers all Apple devices (macOS, iOS, iPadOS) since 2015 and should come first for a screen-heavy Apple user base. Microsoft YaHei (Simplified) and Microsoft JhengHei (Traditional) are the default Windows fonts since Vista and cover the largest share of desktop users in mainland China. Noto Sans/Serif and Source Han Sans/Serif are the same underlying typeface released by Google and Adobe respectively, and are common on Android, Linux, and Chrome OS. Everything else — WenQuanYi Micro Hei, legacy fonts like SimSun and PMingLiU — exists mainly to catch older or less common systems.
Why Chinese web fonts are so large
A usable Chinese font needs several thousand unique character glyphs — commonly 3,500+ for basic coverage — compared to roughly 100 for a full Latin alphabet with punctuation. That difference alone means Chinese font files commonly run from several megabytes up to tens of megabytes per weight, where the equivalent Latin font weighs a few hundred kilobytes. This is exactly why the font stacks above lean on system fonts first: they're already installed, so there's nothing to download at all. A webfont fallback like Google Fonts is useful as a safety net for the (mostly Linux and older Android) systems without any of the above installed, and modern font CDNs do automatically serve each browser only the glyph subsets it actually needs on the page — but it's still worth treating as an explicit trade-off rather than a default.
A subtle detail: punctuation differs between scripts
Simplified and Traditional Chinese don't just use different character forms — full-width punctuation is positioned differently between them. Full-width commas and periods sit in the bottom-left of their character cell in Simplified Chinese, but centered in Traditional Chinese. Using the wrong script's font for punctuation-heavy text can make quotation marks and commas look subtly "off" to native readers even when every character itself is correct — one more reason to keep Simplified and Traditional font stacks genuinely separate rather than treating them as interchangeable.
Beyond fonts: is your content actually right for the market?
Getting the typography right is table stakes — it's a signal that a site was actually built for a Chinese audience rather than adapted at the last minute. But font stacks alone don't fix script mismatches, mistranslated terminology, or a technical setup that Baidu can't crawl properly. If you're getting the front-end details right and want the content and SEO strategy to match, our Baidu SEO and Chinese AI-SEO/GEO teams can help with the rest.
Related tools
Frequently Asked Questions
-
Yes. The tool is completely free to use with no sign-up, registration, or account required. Choose your target script and style and get a ready-to-use CSS font-family declaration instantly.
-
Different operating systems ship with different default Chinese fonts, and Simplified and Traditional Chinese use visually different character forms that need script-specific fonts. Apple systems use PingFang, Windows uses Microsoft YaHei or Microsoft JhengHei, Android and Linux commonly use Noto Sans or WenQuanYi. Listing several fonts in priority order lets each visitor's browser pick the best one actually installed on their system, falling back gracefully if the first choice isn't available.
-
A usable Chinese font needs several thousand unique character glyphs, compared to around 100 for a Latin font, so full Chinese font files commonly run from several megabytes up to tens of megabytes per weight. This is why relying on system fonts first, with a webfont only as an explicit fallback, is the standard approach for Chinese sites — Google Fonts and similar CDNs also automatically serve browsers only the glyph subsets actually needed on the page, which significantly reduces the real-world download size.
-
Yes. Adding a font name to a font-family list only tells the browser what to look for among fonts already available on the visitor's system — it does not download anything. To actually load a webfont, you need to include the accompanying link tag (or an @import rule) shown alongside the generated CSS, which tells the browser where to fetch the font file from.
-
If your site serves a single, known region, pick that script directly for a shorter, more predictable font list. The Universal option combines Simplified and Traditional system fonts into one stack, useful for sites that serve multiple Chinese-speaking regions without separate language versions. For serious multi-region sites, a more precise approach is to set distinct font-family rules per language using CSS :lang() selectors.