Section 508 caption display rules: two lines, 45 characters, burned in
Section508.gov asks for two lines, 45 characters per line, white text on a translucent black box. How each rule maps to Sume's caption design fields.

The U.S. government's Section 508 guidance asks for no more than two lines of text at a time, with no more than 45 characters per line, shown in the center of the lower third. Its default is white text on a black translucent background in a sans serif font, with the same colors on every caption. Sume's design object on POST /v1/video-captions has a field for each of these, with one catch: a viewer cannot restyle burned-in text.
The rules below come from the Captions and Transcripts page on Section508.gov, reviewed August 2025 and read 2026-10-03. They are guidance for federal content, but they make a clean checklist for anyone burning captions.
What does Section 508 say about how captions look?
The page's display section lists these points:
- Use a sans serif font such as Helvetica or Arial; as a default, 18-point text, white on a black translucent background.
- Use the same caption text and background color for all captions, because people with color blindness cannot see color differences.
- No more than two lines at a time, with no more than 45 characters per line; fewer is ideal.
- Center the captions in the lower third of the frame unless that blocks important text such as signs or speaker identifiers.
- Avoid scrolling, flashing and other distracting animation; the text must stay put long enough to read.
Which Sume fields map to those rules?
A style is a set of design tokens, and design overrides them for one request. Every field is optional and merges over the style's own value. Numbers outside the documented range return a 400 at request time instead of rendering wrong and billing.
| Section 508 guidance | Sume field | Setting to try |
|---|---|---|
| 45 characters per line | design.phrasing.max_chars | 45 |
| Same color on every caption | design.colors.active equal to design.colors.base | #FFFFFF for both, so the spoken word does not change color |
| White text, translucent black box | design.colors.base, design.colors.card | #FFFFFF and rgba(0,0,0,0.7) |
| Lower third, centered | design.placement.anchor_ratio (line centre as a fraction of frame height) | 0.85 |
| No distracting animation | design.motion.enter_seconds, exit_seconds, emphasis_in_seconds, emphasis_out_seconds | 0 on each |
| Readable size | design.typography.font_size_ratio | Pick a ratio, then check a frame on a phone |
What does a request look like?
Here is a body that applies the table. It uses black-outline, the style the docs use in their own design example. Whether a given style draws a card behind the text depends on the style, so render one test clip and check it before a batch.
{
"video_url": "https://example.com/clean.mp4",
"style": "black-outline",
"design": {
"colors": {"base": "#FFFFFF", "active": "#FFFFFF",
"card": "rgba(0,0,0,0.7)"},
"phrasing": {"max_chars": 45},
"placement": {"anchor_ratio": 0.85},
"motion": {"enter_seconds": 0, "exit_seconds": 0,
"emphasis_in_seconds": 0, "emphasis_out_seconds": 0}
}
}What can burned-in captions not do?
The same page says that if a video player lets you customize caption settings, you should let users change font size, color and placement, and write captions so that those changes do not alter their meaning. Burned-in captions fail that point by construction: they are pixels. If you must satisfy it, publish a separate caption track as well, or serve the burned-in version only where a track is impossible.
Two more points transfer directly. Section 508 says speech over about 180 words per minute, an average of 3 words per second, may be too fast for captions, and that on-screen text should stay in the top two-thirds of the frame because players put captions in the lower third. Both are decisions you make before you render.
What does it cost to try?
Each accepted standalone caption job reserves and captures $0.20 for videos up to 60 seconds, under the current fixed estimate; confirm live pricing in GET /v1/catalog. Because the design fields fail fast with a 400, a wrong range does not bill.
Sources
Related posts
More in Use cases
- Seedance 2.5 or Avatar video for a 30-second product ad?
Sume's Video Router lists seedance-2.5 for 4-30 s clips; Avatar Video plans 4-60 s of a talking presenter. How to choose for a product ad.
- AI video for lessons: Seedance 2.5 demo clips for teachers
Can Seedance 2.5 make lesson videos? ByteDance names classroom use. What a teacher can request on Sume: 4-30 s clips, references, captions.
- Seedream 4.5 edit: swap a product with up to 10 references
fal describes Seedream 4.5 edit as multi-reference product replacement and text overlay with no masking tool. The same shape of call on Sume.
- Separate audio and video tracks in a Short: the same split in Sume
Reports say YouTube's Shorts editor now separates audio and video tracks. Sume's Timeline has that split: one audio spine, up to 200 video slots.
Written by Sume