Choosing attractive colors is only half the job: text, buttons, icons, and backgrounds must remain distinguishable for real people and real screens. This accessible color combinations library gives you 50 reusable palette starting points, contrast guidance, export instructions, and a practical checklist for websites, apps, posters, and other design projects.
Overview
Contrast is a relationship between two colors, not a quality that belongs to one color by itself. A dark blue may work well as text on a pale surface but fail when placed on a mid-tone blue button. Test every important foreground-and-background pair in its actual context.
For a working WCAG 2 contrast review, use these thresholds as a starting point: normal-size text generally needs a ratio of at least 4.5:1 for AA and 7:1 for AAA. Large text generally needs at least 3:1 for AA and 4.5:1 for AAA. Interface components and meaningful graphical objects have separate considerations, so do not treat a passing text ratio as approval for an entire interface.
The library below uses a dark text or control color, a light background, a secondary color, and an accent. Ratios are reference values for the primary foreground/background pairing and should be rechecked in your chosen contrast checker before publication, especially when opacity, gradients, images, thin type, or font changes are involved. The secondary and accent colors are design roles, not automatic text recommendations.
50 accessible palette starting points
| # | Primary | Secondary | Accent | Background | Reference ratio | Suggested use |
|---|---|---|---|---|---|---|
| 01 | #111827 | #374151 | #2563EB | #FFFFFF | 17.7:1 | Body text and SaaS UI |
| 02 | #1F2937 | #4B5563 | #0EA5E9 | #F8FAFC | 14.0:1 | Documentation and dashboards |
| 03 | #0F172A | #334155 | #38BDF8 | #FFFFFF | 17.9:1 | Navigation and hero copy |
| 04 | #172554 | #1E3A8A | #F59E0B | #FFFBEB | 15.8:1 | Finance or education UI |
| 05 | #1E3A8A | #1D4ED8 | #F97316 | #FFFFFF | 12.5:1 | Calls to action and links |
| 06 | #172554 | #3B82F6 | #FBBF24 | #EFF6FF | 13.8:1 | Product landing page |
| 07 | #164E63 | #0E7490 | #F97316 | #ECFEFF | 12.1:1 | Travel or coastal branding |
| 08 | #134E4A | #0F766E | #F59E0B | #F0FDFA | 12.8:1 | Wellness and service pages |
| 09 | #064E3B | #047857 | #D97706 | #ECFDF5 | 11.9:1 | Environmental projects |
| 10 | #14532D | #15803D | #CA8A04 | #F0FDF4 | 11.6:1 | Garden and food brands |
| 11 | #3F1D1D | #7F1D1D | #EA580C | #FFF7ED | 12.4:1 | Editorial and hospitality |
| 12 | #450A0A | #991B1B | #F59E0B | #FEF2F2 | 14.4:1 | Alerts and promotional pages |
| 13 | #4C0519 | #9D174D | #DB2777 | #FFF1F2 | 14.8:1 | Beauty and lifestyle UI |
| 14 | #3B0764 | #6B21A8 | #C026D3 | #FAF5FF | 14.5:1 | Creative tools and portfolios |
| 15 | #312E81 | #4338CA | #0891B2 | #EEF2FF | 12.8:1 | Technology branding |
| 16 | #27272A | #52525B | #E11D48 | #FAFAFA | 14.8:1 | Neutral editorial layout |
| 17 | #262626 | #525252 | #16A34A | #FFFFFF | 15.1:1 | Commerce and catalog UI |
| 18 | #18181B | #3F3F46 | #7C3AED | #F4F4F5 | 15.2:1 | Dark-accent product system |
| 19 | #292524 | #57534E | #B45309 | #FAFAF9 | 14.5:1 | Craft and print projects |
| 20 | #1C1917 | #44403C | #0F766E | #F5F5F4 | 15.1:1 | Warm minimalist branding |
| 21 | #374151 | #6B7280 | #2563EB | #FFFFFF | 10.3:1 | Secondary headings and links |
| 22 | #4B5563 | #9CA3AF | #0369A1 | #FFFFFF | 7.0:1 | Forms and utility pages |
| 23 | #334155 | #64748B | #0284C7 | #F8FAFC | 9.9:1 | Analytics interface |
| 24 | #475569 | #94A3B8 | #7C3AED | #FFFFFF | 8.2:1 | Accessible neutral UI |
| 25 | #3F3F46 | #71717A | #C2410C | #FFFFFF | 9.7:1 | Operations dashboard |
| 26 | #365314 | #4D7C0F | #A16207 | #F7FEE7 | 10.6:1 | Outdoor and nature brands |
| 27 | #3F6212 | #65A30D | #B45309 | #FEFCE8 | 10.0:1 | Food packaging concepts |
| 28 | #115E59 | #0D9488 | #BE123C | #F0FDFA | 9.8:1 | Health and community services |
| 29 | #155E75 | #0891B2 | #C2410C | #F0F9FF | 10.3:1 | Marine and science themes |
| 30 | #075985 | #0284C7 | #A16207 | #F0F9FF | 11.3:1 | Information panels |
| 31 | #581C87 | #7E22CE | #BE123C | #FAF5FF | 11.8:1 | Arts and culture sites |
| 32 | #701A75 | #A21CAF | #9A3412 | #FDF4FF | 11.2:1 | Festival promotion |
| 33 | #831843 | #BE185D | #9A3412 | #FDF2F8 | 10.7:1 | Fashion and editorial work |
| 34 | #7C2D12 | #C2410C | #166534 | #FFF7ED | 10.1:1 | Restaurant and event design |
| 35 | #713F12 | #A16207 | #1D4ED8 | #FEFCE8 | 9.9:1 | Poster and print palette |
| 36 | #1E293B | #475569 | #22C55E | #F1F5F9 | 13.0:1 | Product status screens |
| 37 | #111827 | #4B5563 | #F97316 | #FFF7ED | 14.4:1 | High-energy CTA system |
| 38 | #0C4A6E | #0369A1 | #FACC15 | #F0F9FF | 9.0:1 | Learning resources |
| 39 | #064E3B | #047857 | #FBBF24 | #FFFBEB | 10.7:1 | Seasonal campaign system |
| 40 | #3B0764 | #86198F | #F59E0B | #FFF7ED | 13.0:1 | Illustration portfolio |
| 41 | #172554 | #3730A3 | #16A34A | #F0FDF4 | 14.2:1 | Professional service site |
| 42 | #1C1917 | #57534E | #DC2626 | #FEF2F2 | 14.0:1 | Important notices |
| 43 | #27272A | #52525B | #2563EB | #EFF6FF | 13.8:1 | Corporate landing page |
| 44 | #312E81 | #6366F1 | #EA580C | #FFF7ED | 12.7:1 | Campaign hero section |
| 45 | #14532D | #166534 | #CA8A04 | #FFFBEB | 10.9:1 | Farm and sustainability work |
| 46 | #450A0A | #7F1D1D | #2563EB | #EFF6FF | 13.4:1 | Contrast-led editorial design |
| 47 | #164E63 | #155E75 | #E11D48 | #FFF1F2 | 11.5:1 | Modern social graphics |
| 48 | #422006 | #78350F | #0369A1 | #FFFBEB | 13.1:1 | Handmade and artisan brands |
| 49 | #172554 | #1E40AF | #DB2777 | #FDF2F8 | 13.0:1 | Community and membership UI |
| 50 | #18181B | #3F3F46 | #14B8A6 | #F0FDFA | 15.0:1 | Creative software interface |
For downloadable swatches, copy each hex value into your design tool and export the collection as ASE for Adobe workflows, ACO for Photoshop color swatches, GPL for applications that support GIMP palettes, and SVG or PNG for visual references. Keep the hex list as the source of truth so every format can be regenerated after a color change. A palette preview is not a substitute for testing text over the exact production background.
Checklist by scenario
Websites and applications
- Assign explicit roles: text, surface, border, link, button, focus indicator, success, warning, and error.
- Test body text, headings, placeholder text, navigation, disabled states, and button labels separately.
- Check hover, active, focus, selected, and error states rather than testing only the default screen.
- Pair color with wording, icons, patterns, or position so meaning does not depend on color alone.
Branding and social graphics
- Choose one dependable dark color and one dependable light surface before adding expressive accents.
- Test the palette on small text, mobile screens, compressed images, and both light and dark surroundings.
- Document approved pairings instead of presenting a loose row of attractive swatches.
Posters and print
- Check the intended paper, ink, finish, and viewing distance with a proof.
- Do not assume that a screen-passing combination will reproduce identically in print.
- Prioritize hierarchy: title, essential details, call to action, and supporting information should remain distinguishable.
For a print-focused workflow, see the poster color palette guide. For digital canvas planning, the aspect ratio guide helps you test layouts at their intended size.
What to double-check
- Actual contrast: Run the final hex, RGB, or CSS values through an accessible color palette checker. Recheck colors altered by opacity, overlays, gradients, or image backgrounds.
- Text size and weight: Large text may use a different threshold, but thin or delicate lettering can be harder to read than its nominal size suggests.
- Component boundaries: A button may need enough contrast against its surrounding surface, while its label needs contrast against the button fill.
- Non-color cues: Links, warnings, selected items, and charts need labels, underlines, icons, patterns, or other cues where color alone could be ambiguous.
- Export consistency: Compare ASE, ACO, GPL, SVG, and PNG previews against the original values. Name swatches by role as well as by hex value.
- Licensing and ownership: The colors themselves do not create a license issue, but any accompanying vectors, textures, fonts, or illustrations may. Use the design asset licensing guide when adding other downloadable assets.
You can also use the broader accessible color combinations guide when building a complete UI color system rather than selecting a single pair.
Common mistakes
- Testing only the brand colors: Brand colors may be suitable for large areas or decoration but fail as small text. Create dedicated text and surface roles.
- Using a passing ratio as a complete accessibility review: Contrast does not assess keyboard access, focus visibility, wording, motion, reading order, or screen-reader behavior.
- Putting light text on a bright accent: Saturated yellow, orange, lime, and cyan often look strong as accents but need careful testing as text backgrounds.
- Ignoring states: A default button can pass while its hover, disabled, or focus version becomes difficult to see.
- Relying on a screenshot: Screenshots hide selectable text, responsive behavior, and the effect of real content. Test the implementation.
- Exporting without a source file: Keep a named master palette so a tool update or revised brand color can be distributed consistently.
When to revisit
Return to this library before each new website, app release, campaign, poster series, or seasonal content cycle. Recheck the palette whenever a brand color, typeface, component size, background image, or design tool changes. A small change to a button fill can alter its contrast with both its label and its surrounding surface.
Editors should refresh the reference calculations if WCAG thresholds, contrast-testing algorithms, or accepted testing guidance changes. Export instructions should be reviewed when major design tools add or remove palette formats. New seasonal and community-submitted palettes can be added quarterly, provided every proposed pairing is tested and its intended role is documented.
Before you publish, copy this one-page checklist into the project brief:
- □ Primary text and background pair tested.
- □ Large-text and normal-text results recorded.
- □ Links, buttons, borders, icons, and focus states checked.
- □ Hover, active, disabled, error, and success states checked.
- □ Meaning is not communicated by color alone.
- □ Light and dark surfaces, images, gradients, and overlays reviewed.
- □ Print proof or real-device review completed where relevant.
- □ ASE, ACO, GPL, SVG, and PNG exports match the master palette.
- □ Palette roles, contrast results, date, and tool used recorded.
Save the checklist with the palette files and revisit it after every substantial design change. For related color exploration, use the color palette generator guide or learn how to build a palette from an image without losing control of accessible pairings.