Watch Face Format  |  Wear OS  |  Android Developers Skip to main content Essentials Build AI experiences Build AI-powered Android apps with Gemini APIs and more. Get started Get started Create your first app. Use Compose for UI and adaptive app development to support multiple device form factors. Hello, world! Developer Verification Adaptive apps Compose for UI AI-powered IDE Training Monetization with Play ↗️ Optimize by form factor Build apps that optimize the user experience on phones, tablets, foldables, cars, XR, and more. Phones, tablets, foldables Android for Cars Android TV Android XR Googlebook ChromeOS Wear OS Build by category Learn to build for your use case by following Google's prescriptive and opinionated guidance. Games Camera & media Social & messaging Health & fitness Productivity Enterprise apps Get the latest Stay in touch with the latest releases throughout the year, join our preview programs, and give us your feedback. Latest updates Experimental updates Android Studio preview Jetpack & Compose libraries Wear OS releases Privacy Sandbox ↗️ Design & Plan Excellent Experiences Build the best experiences for your best users. Learn more UI Design Design a beautiful user interface using Android best practices. Design for Android Mobile Desktop experiences XR Headsets & XR Glasses AI Glasses Widgets Wear OS Android TV Android for Cars Architecture Design robust, testable, and maintainable app logic and services. Introduction Libraries Navigation Modularization Testing Kotlin Multiplatform Quality Plan for app quality and align with Play store guidelines. Overview Core value User experience Accessibility Technical quality Excellent Experiences Security Safeguard users against threats and ensure a secure Android experience. Overview Privacy Permissions Identity Fraud prevention Develop Gemini in Android Studio Your AI development companion for Android development. Learn more Get Android Studio Core areas Get the samples and docs for the features you need. Samples Multidevice support User interfaces Background work Data and files Connectivity All core areas ⤵️ Tools and workflow Use the IDE to write and build your app, or create your own pipeline. Write and debug code Build projects Test your app Performance Command-line tools Gradle plugin API Android Bench Device tech Write code for form factors. Connect devices and share data. Phones, tablets, foldables ChromeOS Android for Cars Android TV Android XR Wear OS Android Health Better Together All devices ⤵️ Libraries Browse API reference documentation with all the details. Android platform Jetpack libraries Compose libraries Google Play services ↗️ Google Play SDK index ↗️ Google Play Play Console Publish your app or game and grow your business on Google Play. Go to Play Console Learn more ↗️ Fundamentals Learn how to engage users, monitize, and secure your app. Play Monetization Play Integrity Play Policies Play Programs ↗️ Games Dev Center Develop and deliver games. Get tools, downloads, and samples. Overview Play Asset Delivery Play Games Services Play Games on PC Level Up guidelines All Play guides ⤵️ Libraries Browse API reference documentation with all the details. Play Feature Delivery Play In-app Updates Play In-app Reviews Play Install Referrer Google Play services ↗️ Google Play SDK index ↗️ All Play libraries ⤵️ Tools & resources Tools for publishing, promoting, and managing your app. Android App Bundles Brand & marketing Play Console APIs ↗️ Blog the Android Developer's Blog Read the latest Explore the authors → Explore categories Case Studies Real-world results from real-world users. Explore how different teams use our tools to achieve their goals. Events & Programs Get the details on upcoming webinars, workshops, meetups, and special initiatives designed to help you grow. Product News Stay in the loop with the latest updates, feature releases, and behind-the-scenes looks at how we’re evolving. Community Discover stories from our users, spotlight features, and the collaborative projects that bring us all together. How-tos From quick tips to deep-dive tutorials, these step-by-step guides are designed to help you work smarter and faster. / English Deutsch Español – América Latina Français Indonesia Italiano Polski Português – Brasil Tiếng Việt Türkçe Русский עברית العربيّة فارسی हिंदी বাংলা ภาษาไทย 中文 – 简体 中文 – 繁體 日本語 한국어 Android Studio Sign in Develop Devices Wear OS Essentials More Design & Plan More Develop More Google Play More Blog More Android Studio All devices ⍈ Get started Create and run your first Wear OS app About Wear OS apps Overview Principles of Wear OS development Wear OS versus mobile development Test and debug Test on the Wear OS emulator Debug a Wear OS app Debug Wear OS over Wi-Fi Connect a watch to a phone Capture Wear UI screenshots Design user interfaces Overview Design for Wear OS ⍈ Accessibility Build user interfaces Jetpack Compose on Wear OS Overview Learn about design guidelines ⍈ Handle different screen sizes Create lists Migrate to Material 3 Expressive Navigation Navigation 3 Migrate to Navigation 3 Legacy navigation Performance Rotary input Maintain legacy UI with Views ⍈ User input Physical buttons Create input method editors Voice Add a splash screen Always-on apps and system ambient mode Build apps Standalone apps Develop for kids Conserve power Authentication Appear in recents and app resume Wear OS app quality ⍈ Package Wear OS apps Create Wear OS apps for China Play audio Overview Test Bluetooth audio on emulators Manage data Prepare to handle data Overview Choose a client type Request permissions Detect location Discover devices on a network Process data Read sensor data using Health Services ⍈ Handle data layer events Dynamic expressions Transfer data Sync persistent data Sync data items with the Data Layer API Communicate directly over a network Transfer data to a new mobile device Use cloud backup and restore Manage notifications Notifications on Wear OS Bridge across form factors Live Updates Ongoing activities Create tiles About tiles Get started with tiles Lifecycle of a tile Develop for different screen sizes Run and debug a tile Show periodic updates Show dynamic updates Animate tile elements Interact with tiles Versioning Try out widgets About widgets Get started with widgets Migrate from tiles to widgets Create watch faces About watch faces Design with Watch Face Designer Overview Basics Advanced usage Export your watch face Publish to Google Play Open source licenses Develop with Watch Face Format Overview Setup Represent the time Weather data Optimize memory usage Save power using ambient mode Work with images Work with text Build expressions Dynamically change appearance Create animated images Dynamically change content Show data in complications Arrange elements into groups Apply masks, blend effects, and tints Personalization overview Define user configurations Support photos Debug a watch face Build and deploy a watch face Release notes XML reference ⍈ Complications About complications Expose data to complications Publish watch faces using Watch Face Push Overview Configure Wear OS app Configure phone app Release notes Wear OS 7 Overview Set up your app Prepare for behavior changes Explore features Wear OS 6.1 Wear OS 6 Overview Set up your app Prepare for behavior changes Explore features SDK and support library Other releases Wear OS 5.1 Wear OS 5 Overview Prepare for behavior changes Update target SDK version Explore features Wear OS 4 Overview Prepare for behavior changes Explore features Build AI experiences Get started Get started Hello, world! Developer Verification Adaptive apps Compose for UI AI-powered IDE Training Monetization with Play ↗️ Optimize by form factor Phones, tablets, foldables Android for Cars Android TV Android XR Googlebook ChromeOS Wear OS Build by category Games Camera & media Social & messaging Health & fitness Productivity Enterprise apps Get the latest Latest updates Experimental updates Android Studio preview Jetpack & Compose libraries Wear OS releases Privacy Sandbox ↗️ Excellent Experiences Learn more UI Design Design for Android Mobile Desktop experiences XR Headsets & XR Glasses AI Glasses Widgets Wear OS Android TV Android for Cars Architecture Introduction Libraries Navigation Modularization Testing Kotlin Multiplatform Quality Overview Core value User experience Accessibility Technical quality Excellent Experiences Security Overview Privacy Permissions Identity Fraud prevention Gemini in Android Studio Learn more Get Android Studio Core areas Samples Multidevice support User interfaces Background work Data and files Connectivity All core areas ⤵️ Tools and workflow Write and debug code Build projects Test your app Performance Command-line tools Gradle plugin API Android Bench Device tech Phones, tablets, foldables ChromeOS Android for Cars Android TV Android XR Wear OS Android Health Better Together All devices ⤵️ Libraries Android platform Jetpack libraries Compose libraries Google Play services ↗️ Google Play SDK index ↗️ Play Console Go to Play Console Learn more ↗️ Fundamentals Play Monetization Play Integrity Play Policies Play Programs ↗️ Games Dev Center Overview Play Asset Delivery Play Games Services Play Games on PC Level Up guidelines All Play guides ⤵️ Libraries Play Feature Delivery Play In-app Updates Play In-app Reviews Play Install Referrer Google Play services ↗️ Google Play SDK index ↗️ All Play libraries ⤵️ Tools & resources Android App Bundles Brand & marketing Play Console APIs ↗️ the Android Developer's Blog Read the latest Explore the authors → Explore categories Case Studies Events & Programs Product News Community How-tos Android Developers Develop Devices Wear OS Watch Face Format Stay organized with collections Save and categorize content based on your preferences. Note: As of January 2026, the Watch Face Format is required for installing watch faces on all Wear OS devices. Learn more about the user-facing changes in this Help Center article. A watch face is the first thing a user sees when they look at their watch, making it the most frequently used surface of Wear OS. Users rely on watch faces to customize their watches to suit their style and provide quick information at a glance. Options for creating watch faces The Watch Face format (WFF) makes it easier than ever to build a watch face. Created in partnership with Samsung, the Watch Face Format is a declarative XML format to configure the appearance and behavior of watch faces. Unlike other watch face APIs, where your APK must include the code to render the watch face, the Watch Face Format only requires resources and declarative instructions. The Wear OS platform handles the logic needed to render the watch face so you can focus on your creative ideas, rather than code optimizations or battery performance. Watch faces built with this format require less maintenance and fewer updates than those built using the legacy Jetpack Watch Face libraries. For example, you don't need to update your watch face to benefit from improvements in performance or battery consumption, or to get the latest bug fixes. We provide several ways to create a watch face: If you prefer a What-You-See-Is-What-You-Get style tool that lets you design the watch face directly, use Watch Face Studio, which we support in partnership with Samsung. If you're comfortable using Figma as a designer, or if you're looking to accelerate the first few steps of creating a watch face as a developer, use Watch Face Designer, which you access using a plug-in within Figma. If you prefer to manage your watch configuration manually and publish to your own app store, you can define watch faces using XML. Android Studio includes support for building watch faces that use Watch Face Format. You can then visualize these watch faces by running them on a device. Note: The guides on how to represent the time, and subsequent guides within this part of the documentation, target developers who either use XML or build custom tools to create watch faces using Watch Face Format. After you've created your watch face, you can publish it in several different ways, such as through Google Play or using Watch Face Push. About the format At the heart of a Watch Face Format (WFF) watch face is a document that defines the layout and behavior of the watch face. This document is written in XML, conforming to the WFF specification. The Wear OS system includes a watch face renderer component. This component parses your WFF XML document and renders a watch face from it. Other resources, such as images and fonts, are pulled in as necessary. This approach means you only need to spend time describing how the watch face should look, and Wear OS handles all of the code for drawing the watch face. To deploy a Watch Face Format watch face to a device, package the XML document in a standard AAB or APK package. The following diagram shows an overview of the approach: Versioning in WFF As WFF evolves, additional features are added, represented by more elements, attributes, and data sources that all use the Watch Face Format. For example, WFF version 2 introduced Weather support as a data source, which is not available in WFF version 1. When designing your watch face, be aware of which features you want to use and their version availability. The reference guide marks all features with their availability. Each version of WFF aligns with a Wear OS release: WFF version Minimum Wear OS version Minimum API level 1 4 33 2 5 34 3 5.1 35 4 6 36 See this guidance for configuring your AndroidManifest.xml and Gradle build file appropriately. Learn more Learn more about the Watch Face Format in these guides: Available features: Explore the watch face capabilities that each version of Watch Face Format supports. Design guidelines: Learn best practices for your watch face's layout and user experience. Watch Face Designer: Learn how to use the Figma plugin to create your watch face. Setup: Configure an Android App Bundle that supports the Watch Face Format. GitHub samples: Get started by building sample watch faces and deploying them on the Wear OS emulator or your physical device. Optimize memory usage: Learn how to configure your watch face so the system consumes as little memory as possible when rendering your watch face. XML reference: Explore the individual elements that are parts of a Watch Face Format file. The root element is always WatchFace. Note: To view features from a specific Watch Face Format version in the XML reference, check that the appropriate version button is selected at the top of the documentation page. Publishing guide: Learn how to publish and monetize your watch face through the Play Store and alternative methods. WFF and memory validator: Use these open source tools to check your Watch Face Format file for errors and confirm acceptable memory usage before submitting to Google Play. Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates. Last updated 2026-05-19 UTC. [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2026-05-19 UTC."],[],[]] X Follow @AndroidDev on X YouTube Check out Android Developers on YouTube LinkedIn Connect with the Android Developers community on LinkedIn More Android Android Android for Enterprise Security Source News Blog Podcasts Discover Gaming Machine Learning Health & Fitness Camera & Media Privacy 5G Android Devices Large screens Wear OS ChromeOS devices Android for cars Android TV Releases Android 17 Android 16 Android 15 Android 14 Android 13 Android 12 Android 11 Documentation and Downloads Android Studio guide Developers guides API reference Download Studio Android NDK Support Report platform bug Report documentation bug Google Play support Join research studies Android Chrome Firebase Google Cloud Platform All products Privacy License Brand guidelines Manage cookies Get news and tips by email Subscribe English Deutsch Español – América Latina Français Indonesia Italiano Polski Português – Brasil Tiếng Việt Türkçe Русский עברית العربيّة فارسی हिंदी বাংলা ภาษาไทย 中文 – 简体 中文 – 繁體 日本語 한국어