TL;DR: Bluesky uses Inter as its main interface font on the web app (bsky.app). On iOS, posts and bios render in SF Pro. On Android, they render in Roboto. The AT Protocol branding uses its own visual identity. There is no built-in bold, italic, or font picker for posts.
Bluesky has grown from a small invite-only experiment into a real alternative to X, and with that growth comes a question designers and curious users keep asking: what font is that? The answer is straightforward, and because Bluesky is open-source, you can verify it yourself.
The Bluesky web app font: Inter
The primary typeface on bsky.app is Inter, a free and open-source sans-serif designed by Rasmus Andersson. Inter was originally created for computer interfaces, with a tall x-height and open apertures that keep text readable at small sizes on screens. It ships in variable-weight format, covering everything from Thin (100) to Black (900).
If you open bsky.app in a browser and inspect the CSS, the font stack looks like this:
Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif
Inter does the heavy lifting for post text, profile names, navigation labels, and buttons. The system-ui fallbacks exist for situations where Inter has not loaded yet or for characters Inter does not cover.
You can confirm this yourself. Bluesky is built on React Native for Web using the social-app repository on GitHub. The font declarations live in the theme files. Because everything is open-source under the MIT license, there is nothing hidden about the choice.
Why Inter?
Inter is one of the most widely used UI fonts on the web. GitHub uses it. Figma uses it. It became popular because it was purpose-built for interfaces rather than adapted from a print typeface. A few qualities make it a natural pick for a social platform:
- Legibility at small sizes. The tall x-height and generous letter spacing mean short posts, timestamps, and follower counts stay crisp on high-density screens.
- Variable font support. A single variable file covers all weights, so Bluesky can use semibold for usernames and regular for post body without loading multiple font files.
- Free and open-source. Inter is released under the SIL Open Font License, which means zero licensing cost and no usage restrictions. For a startup building an open protocol, that matters.
- Neutral personality. Inter does not call attention to itself. It gets out of the way and lets the content (your posts, images, links) do the talking.
What about the mobile apps?
On mobile, the picture changes. Bluesky's iOS and Android apps are built with React Native, and they lean on the operating system's default font rather than bundling Inter into the app binary.
| Platform | What renders your posts | Why |
|---|---|---|
| bsky.app (web) | Inter | Loaded via CSS / bundled in the web build |
| iOS app | SF Pro (Apple's system font) | React Native defaults to the OS font on iOS |
| Android app | Roboto (Google's system font) | React Native defaults to the OS font on Android |
This means the same post can look subtly different depending on where you read it. SF Pro has rounder terminals and slightly different letter proportions than Inter, so a bio that looks one way on the website may feel a bit different on an iPhone. This is not a bug. It is a standard trade-off in cross-platform development: bundling a custom font into a mobile app adds to the download size and can cause rendering quirks, so most apps let the OS handle it.
If you have used other social platforms, this pattern will look familiar. X (Twitter) does the same thing with Chirp on web and system fonts on mobile, and Mastodon follows a similar approach with Roboto.
The AT Protocol and Bluesky branding
Bluesky the app and the AT Protocol (the decentralized protocol it runs on) are related but separate. The AT Protocol documentation and branding have their own visual identity, distinct from the social app. The Bluesky butterfly logo and wordmark use custom lettering that is not a publicly available font. You will not find it in a font library.
For the app interface itself, though, it is all Inter (on web) and system fonts (on mobile). There is no secret brand typeface hiding behind the scenes.