macOS Control Color

NSColor.controlColor
Desktop Control Surface
Adaptive System Token•macOS 10.10+ / 10.14+, AppKit

Complete technical specification and developer reference for Control Color in Apple's macOS design system. In light appearance, it resolves to HEX #FFFFFF; in dark appearance, it dynamically adapts to HEX rgba(255, 255, 255, 0.25). Features wide-gamut Display P3 values, UIKit bridge (UIColor.controlColor), AppKit bridge (NSColor.controlColor), WCAG contrast audit, and Xcode drop-in initializers.

Light Mode#FFFFFF
Dark Modergba(255, 255, 255, 0.25)
Control Color Color Preview

The surface of a control.

ColorNSColor.controlColor
Copy:
Dynamic Asset
Desktop Control Surface
macOS 10.10+ / 10.14+, AppKit
Initializers & Color Spaces
Color(r:g:b:)Color(red: 1.000, green: 1.000, blue: 1.000)
Color(r:g:b:op:)Color(red: 1.000, green: 1.000, blue: 1.000, opacity: 1.00)
Color(hue:sat:bri:)HSBColor(hue: 0.000, saturation: 0.000, brightness: 1.000, opacity: 1.00)
Color(.displayP3)Wide GamutColor(.displayP3, red: 1.000, green: 1.000, blue: 1.000, opacity: 1.00)
Color(.sRGB)Color(.sRGB, red: 1.000, green: 1.000, blue: 1.000, opacity: 1.00)
Color(hex:)ExtensionColor(hex: "#FFFFFF")
#colorLiteralXcode#colorLiteral(red: 1.000, green: 1.000, blue: 1.000, alpha: 1.00)
Color(uiColor:)iOSColor(uiColor: UIColor(red: 1.000, green: 1.000, blue: 1.000, alpha: 1.00))
Active HEX: #FFFFFFP3 R: 1.000 G: 1.000 B: 1.000

Technical Color Specifications

Exact resolved HEX codes, sRGB 8-bit components, HSL, and normalized Swift floating-point decimals for Light and Dark modes.

Color Metric / SpaceLight AppearanceDark AppearanceSwift Code Literal
HEX Code#FFFFFFrgba(255, 255, 255, 0.25)Color(hex: "#FFFFFF")
sRGB (0–255)rgb(255, 255, 255)rgba(255, 255, 255, 0.25)(r: 1.000, g: 1.000, b: 1.000)
Display P3 (Wide Gamut)P3 (1.000, 1.000, 1.000)P3 (1.000, 1.000, 1.000)Color(.displayP3, ...)
HSL / HSBhsl(0, 0%, 100%)hsla(0, 0%, 100%, 0.25)Color(hue:sat:bri:)
Platform BridgeUIKit: UIColor.controlColorAppKit: NSColor.controlColorColor(uiColor:) / Color(nsColor:)

Light Appearance

Light Theme
HEX Code
#FFFFFF
RGB (0–255)
rgb(255, 255, 255)
HSL
hsl(0, 0%, 100%)
Normalized Swift Literal:
(r: 1.000, g: 1.000, b: 1.000)

Dark Appearance

Dark Theme
HEX Code
rgba(255, 255, 255, 0.25)
RGB (0–255)
rgba(255, 255, 255, 0.25)
HSL
hsla(0, 0%, 100%, 0.25)
Normalized Swift Literal:
(r: 1.000, g: 1.000, b: 1.000)

Drop-In Developer Snippets

Ready-to-paste code blocks for Xcode asset catalogs and Swift files.

Xcode Location: Save as Contents.json inside Assets.xcassets/Control Color.colorset/
Includes Light + Dark Modes
Contents.json
{
  "colors": [
    {
      "color": {
        "color-space": "srgb",
        "components": {
          "red": "1.000",
          "green": "1.000",
          "blue": "1.000",
          "alpha": "1.000"
        }
      },
      "idiom": "universal"
    },
    {
      "appearances": [
        {
          "appearance": "luminosity",
          "value": "dark"
        }
      ],
      "color": {
        "color-space": "srgb",
        "components": {
          "red": "1.000",
          "green": "1.000",
          "blue": "1.000",
          "alpha": "0.250"
        }
      },
      "idiom": "universal"
    }
  ],
  "info": {
    "author": "xcode",
    "version": 1
  }
}

Live UI Component Sandbox

Preview Color.control color inside standard Apple interface components.

Interactive Controls
Active TagBadge 99+
Toggle Tint
Container & Typography Styling

●SwiftUI Notification

Just now

Demonstrates how Apple designers pair system background tints with dynamic Control Color accents.

Dynamic Headline in Control Color

.foregroundStyle(NSColor.controlColor)

Platform Implementation Snippets

Ready-to-use Swift code for SwiftUI, UIKit, and AppKit applications.

AppKit (macOS Swift)
// AppKit (macOS)
let button = NSButton()
button.contentTintColor = NSColor.controlColor

// Custom Layer Tint
let layer = CALayer()
layer.backgroundColor = NSColor.controlColor.cgColor

// Bridging AppKit into SwiftUI
let swiftUIColor = Color(nsColor: .controlColor)

WCAG 2.1 Accessibility Contrast Audit

Contrast calculations of Control Color against pure white and iOS OLED dark surfaces.

Light Mode (#FFFFFF)on White (#FFF)
Contrast Ratio:1.00:1
Normal Text (4.5:1 AA): Fail
Dark Mode (rgba(255, 255, 255, 0.25))on Dark (#1C1C1E)
Contrast Ratio:2.28:1
Normal Text (4.5:1 AA): Fail

Recommended HIG Use Cases

  • Buttons, popups, and segmented controls
  • Active selection rings and focus states
  • Slider tracks and progress indicators

Anti-Patterns to Avoid

  • Long-form document text
  • Static non-interactive headers

Frequently Asked Questions

How do I use NSColor.controlColor in macOS AppKit apps?

In AppKit, assign NSColor.controlColor to NSView, NSTextField, or NSButton styling. In SwiftUI on macOS, bridge it using Color(nsColor: .controlColor).

What is the HEX code for macOS Control Color in light and dark mode?

In light appearance, Control Color resolves to #FFFFFF. In dark appearance, it automatically adapts to rgba(255, 255, 255, 0.25).

How do I bridge NSColor.controlColor into SwiftUI?

In SwiftUI views on macOS, instantiate Color(nsColor: .controlColor) to access the native AppKit dynamic color token.

Does Control Color adapt to Dark Mode and vibrancy in macOS?

Yes, NSColor.controlColor is an appearance-aware NSColor that updates automatically when switching between light and dark modes or across vibrant desktop materials.

Why use AppKit system colors instead of hardcoded hex values?

NSColor system tokens adapt automatically to user accent color preferences, Dark Mode, and accessibility contrast settings.