Accessibility
· 13 checks — Landmarks, headings, alt text, forms, and link quality rolled into one auditable list.F404 Error PageActionHTTP 404, bare pageFIX
DWeb ManifestActionNot foundFIX
No web manifest found.
DDark Mode SupportActionNo dark mode signalsFIX
Detection limited to meta tags and inline styles.
DPrint StylesheetActionNo print stylesFIX
BLink & Button Quality2 issue(s) across 126 links and 41 buttonsREVIEW
| Element | Text | Issue | Suggested Fix |
|---|---|---|---|
| https://www.foreignaffairs.com/ | Foreign Affairs | new tab | Add '(opens in new tab)' to text |
| https://www.youtube.com/watch?v=EFl12cmV… | Watch on Youtube | new tab | Add '(opens in new tab)' to text |
| https://www.cfr.org/keywords/artificial-… | Read More | generic text | Replace with descriptive text |
Before: Read More Suggested: Artificial Intelligence Ai | |||
| https://www.cfr.org/regions/ukraine | Read More | generic text | Replace with descriptive text |
Before: Read More Suggested: Ukraine | |||
| https://www.cfr.org/podcasts/presidents-… | Subscribe | new tab | Add '(opens in new tab)' to text |
| https://link.cfr.org/join/66n/signup | Newsletters | new tab | Add '(opens in new tab)' to text |
| https://education.cfr.org/ | CFR Education | new tab | Add '(opens in new tab)' to text |
| https://store.cfr.org/ | CFR Store | new tab | Add '(opens in new tab)' to text |
| https://www.facebook.com/councilonforeig… | new tab | Add '(opens in new tab)' to text | |
| https://www.linkedin.com/company/council… | new tab | Add '(opens in new tab)' to text | |
| https://www.youtube.com/cfr | youtube | new tab | Add '(opens in new tab)' to text |
| https://www.instagram.com/cfr_org | new tab | Add '(opens in new tab)' to text | |
| https://www.tiktok.com/@cfr_org | tiktok | new tab | Add '(opens in new tab)' to text |
| https://x.com/CFR_org | x | new tab | Add '(opens in new tab)' to text |
Generic link text like 'click here' doesn't describe the destination.
https://www.cfr.org/keywords/artificial-intelligence-ai ("Read More"); https://www.cfr.org/regions/ukraine ("Read More")
Generic anchor text ('click here', 'read more', 'learn more') tells screen readers and search engines nothing about the destination.
Learn more ▾ ▴
Out-of-context lists of links read by AT (one navigation pattern) become useless when every link says 'click here'. Use the destination's title or topic as anchor text. Doubles as SEO win — Google passes anchor-text relevance to the destination.
Source: WCAG 2.4.4 / Google Search Central
Add '(opens in new tab)' to link text or aria-label.
https://www.foreignaffairs.com/; https://www.youtube.com/watch?v=EFl12cmVDnQ; https://www.cfr.org/podcasts/presidents-inbox; https://link.cfr.org/join/66n/signup; https://education.cfr.org/; https://store.cfr.org/; https://www.facebook.com/councilonforeignrelations/; https://www.linkedin.com/company/council-on-foreign-relations; https://www.youtube.com/cfr; https://www.instagram.com/cfr_org (+2 more)
Links with target="_blank" without rel="noopener" leak the originating page's window context — security and UX issue.
Learn more ▾ ▴
Without rel="noopener", the new tab can navigate the original tab via window.opener (tab-nabbing attack). Modern browsers default to noopener for target=_blank but only since recent versions. Always set rel="noopener noreferrer" explicitly.
Source: MDN target / OWASP
CFavicon & BrandingAction4 icon(s) detectedREVIEW
CColor Contrast (Screenshot)Action20 text elements analyzed, 20 fail WCAG AAREVIEW
Analyzes text contrast against the actual rendered page, including background images, gradients, and overlays that CSS-based tools cannot detect.
Show all checked elements (20)
| Element | Ratio | Required | FG | BG | Result |
|---|---|---|---|---|---|
| h1 Informing U.S. engag… | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Iran’s Policy Ripp… | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 More on the Iran War | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 The World Agreed to … | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Interview Series: Wo… | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Around the World | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Podcast: The Hormuz … | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Trending at CFR | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Newsletters and Podc… | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Publications | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 CFR Events | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 CFR in the News | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h2 Latest Content | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h3 Why Trump’s pressu… | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h3 Artificial Intellige… | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h3 The War in Ukraine | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h3 The Daily News Brief | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| h3 The President’s In… | 1.00:1 | 3.0:1 | #000000 | #000000 | Fail |
| title Council on Foreign R… | 1.00:1 | 4.5:1 | #000000 | #000000 | Fail |
| span Skip to content | 1.00:1 | 4.5:1 | #000000 | #000000 | Fail |
Methodology: The top 20 text elements by font size were checked. Background color was sampled from the desktop screenshot using a 5-point pattern. WCAG 2.1 AA requires 4.5:1 for normal text and 3:1 for large text.
A+Landmark Structure17 landmarksPASS
AHeading Hierarchy112 headings, 1 skip(s)PASS
- H1 Informing U.S. engagement with the world
- H3 The Iran War Expands Authoritarian Collaboration skipped
- H3 Vaccine Skepticism Has Risen in the U.S.—And in Many Other Countries
- H3 An 'Open for Open' Hormuz Deal Could Break the Iran Stalemate
- H3 Iran, the Global Economy, and the Case Against Complacency
- H3 Americans Actually Support U.S. Global Leadership
- H3 Why Trump’s pressure on the Fed might be counterproductive
- H3 Iran War
- H3 Artificial Intelligence
- H3 War in Ukraine
- H3 Tariffs
- H3 Venezuela
- H3 Energy and Climate Policy
- H2 Iran’s Policy Ripple Effect
- H3 With Hormuz Closed, China Is Wiring the Globe’s Clean Energy Future
- H3 How the Iran War Confirmed, Contradicted, and Complicated U.S. Policy
- H3 The Easy Win That Could Help Unlock the Strait of Hormuz
- H3 The U.S. Is Pushing Southeast Asia Toward China. The Iran War Made It Worse.
- H2 More on the Iran War
- H3 A Standoff Over the Strait of Hormuz Tests Trump’s Iran Ceasefire
- H3 Coercing Iran: Why Trump’s Hormuz Blockade Has a Short Fuse
- H3 U.S.-Iran Peace Talks Hit an Impasse. What Comes Next?
- H3 Iran’s Support of the Houthis: What to Know
- H3 Trump Secured a Ceasefire With Iran. Will It Last?
- H3 Europe Should Use Its Leverage Over the Iran War
- H3 Trump Gambled by Easing Oil Sanctions on Iran and Russia. Will It Pay Off?
- H3 Kharg Island: Iran’s Oil Lifeline and a Tempting U.S. Target
- H3 Why U.S. Allies in Asia Are Chasing Nuclear Energy—And Eyeing Nuclear Weapons
- H3 Mission Accomplished? Taking Stock of the War in Iran
- H3 Will Operation Epic Fury Affect the Midterm Elections?
- H3 The Iran Conflict Is Becoming a Russia-Ukraine Proxy War
- H3 The Iran War Is a Boon for Russia. Putin Should Still Worry.
- H3 Gulf Leaders Need Trump to Finish the Job in Iran
- H3 Trump Needs a Middle East Humanitarian Plan—Before It’s Too Late
- H2 The World Agreed to Stop Using Food as a Weapon. It Hasn’t.
- H2 Interview Series: Working in Foreign Policy
- H3 How I Got My Career in Foreign Policy: Matthias Matthijs
- H3 How I Got My Career in Foreign Policy: Carla Anne Robbins
- H3 How I Got My Career in Foreign Policy: Rita Fernández
- H3 How I Got My Career in Foreign Policy: Sebastian Mallaby
- H3 How I Got My Career in Foreign Policy: Stuart Reid
- H3 How I Got My Career in Foreign Policy: David J. Scheffer
- H2 Around the World
- H2 Orbán's Fall in Hungary Opens a Door for Europe — and Closes One for Russia
- H2 What's Behind the Global Resurgence of Measles?
- H2 Peru Is About to Elect Its Ninth President in a Decade
- H2 Will NATO’s Seventy-Seventh Anniversary Be Its Last?
- H2 A Year After ‘Liberation Day,’ Experts Review the Costs of Trump’s Tariffs
- H2 Trump’s ‘Maximum Pressure’ Campaign on Cuba, Explained
- H2 The U.S. Is Co-Hosting the FIFA World Cup. But Much of the World Can’t Attend.
- H2 China Is Planning Decades Ahead on Clean Energy. The U.S. Has Other Priorities.
- H2 Podcast: The Hormuz Shock, and Why the Fed Is 'On Hold'
- H2 Trending at CFR
- H3 Artificial Intelligence
- H3 Six Reasons Claude Mythos Is an Inflection Point for AI—and Global Security
- H3 AI Is Facing a Crisis of Control—and the Industry Knows It
- H3 Anthropic’s Standoff With the Pentagon Is a Test of U.S. Credibility
- H3 The AI Sovereignty Paradox at Home and Abroad
- H3 The AI Bubble + The Productivity Paradox + India’s AI Summit
- H3 America’s Digital Empire Has a Trust Problem
- H3 The War in Ukraine
- H3 The Iran Conflict Is Becoming a Russia-Ukraine Proxy War
- H3 Autonomous Ukraine: One Woman's Path From a U.S. College Campus to the Ukrainian Battlefield
- H3 Autonomous Ukraine: Allies, Partners, or Frenemies?
- H3 Autonomous Ukraine: We Are in a New Era of Warfare
- H3 Defending Europe if Russia Steps Out of the Gray Zone
- H3 Preparing for the Day After in Europe
- H3 Securing Ukraine’s Future in Europe: Ukraine's Defense Industrial Base—An Anchor for Economic Renewal and European Security
- H2 Newsletters and Podcasts
- H3 The Daily News Brief
- H3 U.S.-Iran Truce Deadline Looms
- H3 Iran and the U.S. Exchange Retaliation Threats
- H3 Ten-Day Ceasefire Takes Effect in Lebanon
- H3 U.S. Continues Economic and Diplomatic Pressure on Iran
- H3 Middle East Diplomacy Continues Amid U.S. Blockade
- H3 Israel-Lebanon Talks Loom as Fighting Persists
- H3 The President’s Inbox
- H3 What Comes Next After Failed U.S.-Iran Talks, With Elliott Abrams
- H3 Russia’s Stakes in the Iran War, With Thomas Graham
- H3 Gulf States Under Fire, With Mina Al-Oraibi
- H3 Why Allies Aren’t Following on Iran, With Kristi Govella and Constanze Stelzenmüller
- H3 The Strategy Gap in Iran, With Max Boot
- H3 America at 250: The Lend-Lease Act, With Lynne Olson
- H2 Publications
- H2 After Khamenei: Planning for Iran’s Leadership Transition
- H2 Preventing Renewed Conflict in Colombia
- H2 Leapfrogging China’s Critical Minerals Dominance
- H2 America Revived
- H2 Conflicts to Watch in 2026
- H2 Compete, Don’t Retreat
- H2 The Next Taiwan Crisis Won’t Be Like the Last
- H2 CFR Events
- H3 A New Wave of Foreign Assistance: Innovative Financing and the Power of Commercial Diplomacy
- H3 Home Field Advantage: Sports Diplomacy and North American Cooperation
- H3 A Conversation With President Masato Kanda of the Asian Development Bank
- H3 Delivering at the Frontlines: Innovating and Scaling Support for Fragile and Conflict-Affected States
- H3 Ukraine's Critical Minerals: Aligning Capital, Security, and Reconstruction
- H3 2026 International Monetary Fund Spring Meetings Curtain Raiser
- H2 CFR in the News
- H3 The Strategic Aftershocks of Trump’s Iran War
- H3 Together for Tomorrow: Global Partnerships for Climate Solutions | Webinar
- H3 U.S. War With Iran Hints at Limits of 'Make Europe Great Again' Project, Analysts Say
- H3 Pacifist Japan is Rearming—This is Why
- H3 The Battle for the Chokepoints (in Danish) | Weekendavisen
- H3 Former State Department sanctions lead breaks down U.S. blockade of Iranian ports | CBS News
- H2 Latest Content
- H3 The U.S. Invasion of Veracruz, Mexico
- H3 U.S.-Iran Truce Deadline Looms
- H3 Two Gladiators, One Ambition
- H3 The Iran War Is Highlighting—and Expanding—Authoritarian Collaboration
- H3 Central Bank Currency Swaps Tracker
- H3 A Standoff Over the Strait of Hormuz Tests Trump’s Iran Ceasefire
Skipping heading levels breaks the document outline. Screen readers may interpret missing levels as structural errors.
Skipping heading levels breaks the document outline — screen-reader users lose track of section nesting.
Learn more ▾ ▴
Screen reader users navigate by jumping between headings (H1 → H2 → H3). Skipping (H1 → H3) breaks the sense of hierarchy. Use sequential levels even if you don't like the default styling — restyle with CSS instead. WCAG 1.3.1 (Info and Relationships) treats this as an A failure.
Source: WCAG 2.1 SC 1.3.1 / W3C WAI
AAlt Text Quality1 of 104 images have issuesPASS
| Issue | Count |
|---|---|
| generic | 1 image(s) |
| too long | 42 image(s) |
A+Form AccessibilityAll 1 controls labeledPASS
| Control | Type | Label | Method |
|---|---|---|---|
| #_R_5llb_ | Email address | aria-label |
A+Lighthouse Accessibility AuditsScore 95/100 — 2 failing, 24 passedPASS
Accessibility
These checks highlight opportunities to improve the accessibility of your web app. Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so manual testing is also encouraged.
Navigation
Properly ordered headings that do not skip levels convey the semantic structure of the page, making it easier to navigate and understand when using assistive technologies. Learn more about heading order.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
The Iran War Expands Authoritarian Collaboration div.grid > article.group > div.col-span-full > h3#_R_61lbslb_ |
These are opportunities to improve keyboard navigation in your application.
Best practices
Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. Learn more about touch targets.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
About CFR nav.col-span-12 > ul.grid > li > a.link-reveal-underline |
Membership nav.col-span-12 > ul.grid > li > a.link-reveal-underline |
Support CFR nav.col-span-12 > ul.grid > li > a.link-reveal-underline |
Fellowships nav.col-span-12 > ul.grid > li > a.link-reveal-underline |
Contact Us nav.col-span-12 > ul.grid > li > a.link-reveal-underline |
For Media nav.col-span-12 > ul.grid > li > a.link-reveal-underline |
Privacy Policy nav.col-span-12 > ul.grid > li > a.link-reveal-underline |
These items highlight common accessibility best practices.