Questions answered by this guide
- Why does it matter if my heading is a "real" heading?
- How do screen reader users navigate by heading?
- How do I add a heading in Rise?
- How do I structure headings in Storyline?
- Should I skip heading levels for a smaller-looking title?
- Which WCAG criterion covers headings?
What you'll learn
- A heading needs to be marked as a real heading, not just styled to look like one
- Screen reader users jump between headings to navigate, styled text is invisible to that shortcut
- Heading levels should follow the actual structure, not be picked for how the text size looks
What's inside
Instructional designers structuring section titles in Storyline or Rise
- 01The concept
- 02A worked example
- 03How to fix it in Rise
- 04How to fix it in Storyline
- 05Choosing the right heading level
Why it matters
Screen reader users often jump directly between headings to get a quick sense of a course's structure, the same way a sighted learner might skim a page by its bold section titles. Text that's only styled to look like a heading, large font, bold, centered, is invisible to that navigation shortcut, a screen reader has no way to know it's a heading rather than a regular sentence. This touches two WCAG success criteria: 1.3.1 (Info and Relationships, Level A), because a heading's structural role has to be programmatically determinable, not just visible, and 2.4.6 (Headings and Labels, Level AA), which requires that once a heading exists, its wording actually describes the section's topic or purpose, not just that a heading is present.
When you'll encounter this
- You're adding a section title or lesson title and reach for large, bold text instead of your tool's real Heading option.
- You're reviewing a course someone else built, and a title looks right but you're not sure what block type it actually is.
- You're deciding how many heading levels a lesson needs, and whether to skip a level for a smaller-looking title.
- A11yCheck flags a heading structure issue on a scan report.
Examples
Rise
✕ Incorrect
A lesson's section title is built as a Text block with large, bold formatting applied manually, chosen because it was faster than finding the Heading block.
It looks identical to a real heading for a sighted learner, but a screen reader has no way to know it's a heading, a learner navigating by heading jumps right past it as if it doesn't exist.
✓ Correct
The same title is rebuilt using Rise's real Heading block, at the level that matches its place in the lesson's structure.
Now the title is genuinely announced as a heading, so a screen reader user navigating by heading actually finds it, satisfying WCAG 1.3.1.
Storyline
✕ Incorrect
A slide's title text box uses a smaller font size than the course's real heading style, chosen purely because it looked better in the layout, with no thought to its structural level.
Font size alone doesn't communicate heading level to assistive technology, and picking a size for visual reasons rather than structural ones makes the course's real organization inconsistent and unpredictable for anyone navigating by structure.
✓ Correct
The title is set using the course's actual heading structure and given wording that describes the slide's topic on its own, out of context.
This keeps heading levels meaningful and consistent, and satisfies WCAG 2.4.6's requirement that a heading's text actually describe what follows it.
Best practices
- Use your tool's real Heading option, not large, bold text styling, for anything that visually functions as a section title.
- Choose the heading level that matches its place in the structure, don't skip levels just because a smaller size looks better visually.
- Keep heading wording descriptive enough to make sense on its own, out of context, the same way a good link or button label does.
- Keep heading text reasonably short. A heading that runs several lines is harder to use as a quick navigation point.
- Use headings consistently throughout a course rather than mixing real headings and styled text from lesson to lesson.
Common mistakes
- Using large, bold text instead of a real Heading block or style, because it was faster or looked identical.
- Skipping heading levels, jumping from a top-level heading straight to a much smaller one, purely for visual reasons.
- Writing heading text that only makes sense with the surrounding paragraph, rather than standing on its own.
- Mixing real headings and styled text inconsistently across a course.
Practical checklist
- Every section or lesson title that visually functions as a heading is a real heading, not styled text.
- Heading levels follow the actual structure, not just what size looked best.
- Every heading's wording describes its section's topic on its own, out of context.
- Heading text is reasonably short and used consistently across the course.
How A11yCheck reviews this
A11yCheck's scan checks whether something that visually functions as a heading is actually marked as one, and flags text that's only styled to look like a heading. It can't judge whether a specific heading's wording is the best possible phrasing, that's still a human call, but it reliably catches the structural gap that breaks heading navigation for a screen reader user.
Frequently asked questions
Does Storyline have a dedicated heading block like Rise does?
Storyline doesn't have a single dedicated Heading block the way Rise does, its accessibility relies more on consistent visual and structural conventions and the reading order you set. The same underlying principle applies either way: a title needs to be structurally distinguishable, not just visually styled.
Does WCAG 2.4.6 require headings to exist?
No. 2.4.6 only applies to headings and labels you already have, it doesn't require a heading to exist in the first place. Whether a heading is needed at all is more a structural best practice than a strict WCAG mandate on its own.
What's the difference between heading structure and reading order?
Heading structure is about whether a title is marked as a real heading. Reading order is about the sequence a screen reader announces all content in, including headings. A course can get one right and still fail the other.
Related Guides
Table Structure Guide→
A data table needs its header row (or column) explicitly marked as a header, not just styled to look like one, so a screen reader can announce which column or row each cell belongs to as a learner moves through it.
Accessible Names Guide→
What an accessible name is, why "Click here" fails, and how to write clear names for buttons and controls in Storyline and Rise.
How to Test eLearning with a Screen Reader→
A practical, no-fear guide to testing your own course with a screen reader, from your first NVDA install to knowing exactly what you're listening for.
WCAG for eLearning: A Practical Introduction→
What WCAG actually is, and what it means for a Storyline or Rise course. No legal jargon.
Heading Not Set Up Correctly→
Step-by-step guide to fixing heading structure issues in Articulate Rise 360, so screen reader users can navigate your lesson by heading.
Rise 360 Accessibility Quick Checklist→
A fast, practical pass through your Rise course before you publish it, 19 checks, about 15 minutes.
Storyline Accessibility Quick Checklist→
A fast, practical pass through your Storyline course before you publish it, 20 checks, about 15 minutes.
Focus Order Guide→
Focus order is the order Tab moves through a slide's interactive elements. It should match the order things appear on screen, and it's checked by pressing Tab and watching where focus lands each time.
Summary
A heading needs to be a real, marked heading, not text styled to look like one, so screen reader users can navigate a course by jumping between headings. This is WCAG 1.3.1 for the structural marking itself, and 2.4.6 for making sure the heading's wording actually describes what follows.
Review your course before you publish it.
A11yCheck reviews Storyline and Rise courses for:
- Accessibility
- Course Quality
- Course Engagement
www.a11ycheck-dev.com