A toggle is a switch that has two positions, on and off. It is used to control things like the Caps Lock key or the arrow keys on your keyboard. It is also used for software features that are enabled or disabled through an Options menu. The word toggle comes from the 18th century meaning “pin passed through the eye of a rope to hold it in place,” which is a nice metaphor for how this type of feature works.
Permission Toggles are a specific category of Feature Toggles that control whether users are allowed to access a product or service. This type of Toggle is typically long-lived compared to the other categories and can remain in place for multiple years, depending on the product. When it comes to designing a Toggle, the most important thing is to make it obvious that it is in either the On or Off position. Ideally this is done using high-contrast colors and utilizing visual cues, such as movement and color, to provide clarity. In addition, teams should carefully consider societal and cultural implications of the toggle colors they choose, as certain colors can have unintended effects (e.g. red may be associated with stop signs or traffic signals).
Savvy teams view the inventory of Feature Toggles as a resource that comes with a carrying cost and seek to keep this amount low by being proactive about removing unnecessary toggles from the system. Adding a toggle removal task to the team backlog for each new Release Toggle is an easy way to ensure this. In some cases, teams even go as far as putting expiration dates on their toggles to prevent them from being left around for too long.