Cast Button
Stay organized with collections
Save and categorize content based on your preferences.
The Cast button opens a dialog to connect, control, and disconnect from Web Receivers.
See Cast icons to download the Cast button templates.
Note that the Cast button is not specific to Google Cast; it can be used to represent both Web
and non-Web Receivers (like Bluetooth headsets). Web Receivers should always appear under the
Cast dialog, and never under another dialog, menu, or control.
Introducing the Cast button helps existing users know that the sender app now supports Casting
and also helps users new to Google Cast.
Required
A Show a Cast introduction screen the first time
Web Receivers are available. For iOS senders, show a Cast introduction
screen the first time the Cast button appears.
B Visually highlight the Cast button by circling the
button)
C Explain how the Cast button works (for example,
displaying a message such as "Touch to cast videos to your TV")
Android
Cast introduction
Cast home screen
iOS
Cast introduction
Cast home screen
Chrome
Cast introduction
Cast home screen
Required
A The Cast button must
be visible from every screen where there is playable content, and located in a consistent position
while browsing or playing content. It will also appear in Chrome's header for global control.
B In Chrome, the Cast button can be hidden
when Web Receivers aren't available. For Android and iOS senders,
the Cast button should always display when the device is on Wi-Fi, so proper help can be given
if the user has turned off local network access and devices become undiscoverable as a result
(see iOS Permissions and Discovery
for more details).
C In mobile apps, the Cast button should be on the right
side.
D In Chrome, the Cast button should be on the right side in
the content media controls (for example, see embedded video). If the media controls contain a fullscreen
button, place the Cast button to the left of it.
Note
Google Cast employs a multi-tasking model, which allows users to browse the sender app and
other apps while casting. The Cast button must be visible from every screen where there is
playable content, so the user doesn’t have to hunt to find where to pause or stop the content
playing on TV.
Android
Sender disconnected
Cast home screen
iOS
Sender disconnected
Cast home screen
Chrome
Sender disconnected
Cast home screen
Required
A Disconnected: When Web Receivers are available, the
Cast button appears
B Connecting: When the Web Receiver is connecting, the
Cast button animates the waves in the icon progressively (for details, see note below)
C Connected: When this app is connected to the Cast
Web Receiver, its Cast button appears with a filled frame shape
Best practices
For each of the button states, use colors that match the style of other UI
elements of your app. Using a distinct highlight color (such as yellow) for the ON / Connected
state is optional.
Notes
- The Cast icon displays on Chrome, Android, and iOS to provide access to the Cast extension
regardless of the availability of Cast devices.
- The Connecting (animated) state appears when the connection to the Cast API takes longer than
expected (the Android and Chrome SDK's will automatically animate the Cast icon). Once connected,
the Web Receiver app launches.
- The ON / Connected state of the Cast icon has been updated and now uses a solid fill within the
icon frame. The new Cast icon and icon templates are available
here.
Android
Sender, Cast disconnected
Cast home screen
Sender, Cast connecting
Cast home screen
Sender, Cast connected
Web Receiver app loading
Sender, Cast connected
Web Receiver app loaded / idle
iOS
Sender, Cast unavailable
Cast home screen
Sender, Cast disconnected
Cast home screen
Sender, Cast connecting
Cast home screen
Sender, Cast connected
Web Receiver app loading
Sender, Cast connected
Web Receiver app loaded / idle
Chrome
Sender, Cast unavailable
The Cast icon displays in Chrome to provide access to the Cast extension
regardless of the connection state.
Cast home screen
Sender, Cast disconnected
Cast home screen
Sender, Cast connecting
Cast home screen
Sender, Cast connected
Web Receiver app loading
Sender, Cast connected
Web Receiver app loaded / idle
Images used in this design guide
are courtesy of the Blender Foundation, shared under copyright or Creative Commons license.
- Elephant's Dream: (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute /
www.elephantsdream.org
- Sintel: (c) copyright Blender Foundation | www.sintel.org
- Tears of Steel: (CC) Blender Foundation | mango.blender.org
- Big Buck Bunny: (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-09-18 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 2024-09-18 UTC."],[[["\u003cp\u003eThe Cast button, used for connecting to Web Receivers and other devices, should be visible on every screen with playable content.\u003c/p\u003e\n"],["\u003cp\u003eUsers should be introduced to the Cast button's functionality with a highlight and explanatory message, especially on first use.\u003c/p\u003e\n"],["\u003cp\u003eThe Cast button has distinct visual states (Disconnected, Connecting, Connected) to indicate the connection status.\u003c/p\u003e\n"],["\u003cp\u003eThe Cast button should be consistently positioned, typically on the right side of the UI in mobile apps and Chrome's content media controls.\u003c/p\u003e\n"],["\u003cp\u003eGoogle Cast allows for multitasking, enabling users to browse other apps while casting content.\u003c/p\u003e\n"]]],["The Cast button facilitates connections to Web Receivers, allowing users to control and disconnect. It should be consistently visible on all screens with playable content, positioned on the right in mobile apps and to the left of the fullscreen button in Chrome media controls. The button has distinct states: disconnected, connecting (animated), and connected (filled frame). Users should receive an introduction to the Cast feature, including visual highlights and explanatory messages.\n"],null,["# Cast Button\n\nThe Cast button opens a dialog to connect, control, and disconnect from Web Receivers.\n\nSee [Cast icons](/cast/docs/get-started#download_cast_icons_optional) to download the Cast button templates.\n\nNote that the Cast button is not specific to Google Cast; it can be used to represent both Web\nand non-Web Receivers (like Bluetooth headsets). Web Receivers should always appear under the\nCast dialog, and never under another dialog, menu, or control.\n\n### [Introduce Cast to users](#prompting)\n\nIntroducing the Cast button helps existing users know that the sender app now supports Casting\nand also helps users new to Google Cast.\n\n\n**Required**\n\n\nA Show a Cast introduction screen the first time\nWeb Receivers are available. For iOS senders, show a Cast introduction\nscreen the first time the Cast button appears.\n\n\nB Visually highlight the Cast button by circling the\nbutton)\n\n\nC Explain how the Cast button works (for example,\ndisplaying a message such as \"Touch to cast videos to your TV\") \n\n### Android\n\nCast introduction \nCast home screen \n\n### iOS\n\nCast introduction \nCast home screen \n\n### Chrome\n\nCast introduction \nCast home screen \n\n### [Cast button availability](#sender-cast-icon-available)\n\n\n**Required**\n\n\nA The Cast button must\nbe visible from every screen where there is playable content, and located in a consistent position\nwhile browsing or playing content. It will also appear in Chrome's header for global control.\n\n\nB In Chrome, the Cast button can be hidden\nwhen Web Receivers aren't available. For Android and iOS senders,\nthe Cast button should always display when the device is on Wi-Fi, so proper help can be given\nif the user has turned off local network access and devices become undiscoverable as a result\n(see [iOS Permissions and Discovery](/cast/docs/ios_sender/permissions_and_discovery)\nfor more details).\n\n\nC In mobile apps, the Cast button should be on the right\nside.\n\n\nD In Chrome, the Cast button should be on the right side in\nthe content media controls (for example, see embedded video). If the media controls contain a fullscreen\nbutton, place the Cast button to the left of it.\n\n**Note**\n\nGoogle Cast employs a multi-tasking model, which allows users to browse the sender app and\nother apps while casting. The Cast button must be visible from every screen where there is\nplayable content, so the user doesn't have to hunt to find where to pause or stop the content\nplaying on TV. \n\n### Android\n\nSender disconnected \nCast home screen \n\n### iOS\n\nSender disconnected \nCast home screen \n\n### Chrome\n\nSender disconnected \nCast home screen \n\n### [Cast button states](#sender-cast-icon-states)\n\n\n**Required**\n\n\nA Disconnected: When Web Receivers are available, the\nCast button appears\n\n\nB Connecting: When the Web Receiver is connecting, the\nCast button animates the waves in the icon progressively (for details, see note below)\n\n\nC Connected: When this app is connected to the Cast\nWeb Receiver, its Cast button appears with a filled frame shape\n\n\n**Best practices**\n\n\nFor each of the button states, use colors that match the style of other UI\nelements of your app. Using a distinct highlight color (such as yellow) for the ON / Connected\nstate is optional.\n\n\n**Notes**\n\n- The Cast icon displays on Chrome, Android, and iOS to provide access to the Cast extension regardless of the availability of Cast devices.\n- The Connecting (animated) state appears when the connection to the Cast API takes longer than expected (the Android and Chrome SDK's will automatically animate the Cast icon). Once connected, the Web Receiver app launches.\n- The ON / Connected state of the Cast icon has been updated and now uses a solid fill within the icon frame. The new Cast icon and icon templates are available [here](/cast/docs/get-started#download_cast_icons_optional).\n\n\u003cbr /\u003e\n\n### Android\n\nSender, Cast disconnected \nCast home screen \nSender, Cast connecting \nCast home screen \nSender, Cast connected \nWeb Receiver app loading \nSender, Cast connected \nWeb Receiver app loaded / idle \n\n### iOS\n\nSender, Cast unavailable \nCast home screen \nSender, Cast disconnected \nCast home screen \nSender, Cast connecting \nCast home screen \nSender, Cast connected \nWeb Receiver app loading \nSender, Cast connected \nWeb Receiver app loaded / idle \n\n### Chrome\n\nSender, Cast unavailable\n\nThe Cast icon displays in Chrome to provide access to the Cast extension regardless of the connection state. \nCast home screen \nSender, Cast disconnected \nCast home screen \nSender, Cast connecting \nCast home screen \nSender, Cast connected \nWeb Receiver app loading \nSender, Cast connected \nWeb Receiver app loaded / idle \n\n**Images used in this design guide**\nare courtesy of the Blender Foundation, shared under copyright or Creative Commons license.\n\n- Elephant's Dream: (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute / www.elephantsdream.org\n- Sintel: (c) copyright Blender Foundation \\| www.sintel.org\n- Tears of Steel: (CC) Blender Foundation \\| mango.blender.org\n- Big Buck Bunny: (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org"]]