Writing Tools & Software
10 BBCode Snippets Every World Anvil User Needs
You have a world in your head. World Anvil gives you a place to put it. But between your ideas and a polished article stands BBCode, a formatting system that rewards those who master its syntax. These ten snippets will get you there faster.
World Anvil's BBCode system handles everything from basic text formatting to complex multi-column layouts. The problem is that the documentation is scattered across codex articles, tutorial videos, and community forum posts. You end up with twenty browser tabs open, copying snippets that don't quite work, debugging syntax errors in an article that should have taken ten minutes.
This guide collects the BBCode you'll actually use. Each snippet is copy-paste ready. Each one solves a formatting problem you'll hit sooner or later. Bookmark this page. You'll come back to it.
1. Two-Column Layout
Breaking content into columns makes articles scannable. World Anvil uses the [row] and [col] tags for two-column layouts. The system creates columns from left to right. If you add a third [col] block, it wraps to the next row.
[row]
[col]
Your left column content goes here. This could be a character description, a list of locations, or any other information you want displayed side-by-side.
[/col]
[col]
Your right column content goes here. Stats, relationships, quick facts. Anything that benefits from parallel comparison.
[/col]
[/row]
The columns stack vertically on mobile, so don't rely on left-right positioning for meaning. Put the most important information in the left column since that's what mobile users see first.
2. Three-Column Layout
For more complex layouts, switch to the [col3] tag. Same principle as two columns, but each tag creates one-third width sections.
[row]
[col3]
Column one. Good for labels or categories.
[/col3]
[col3]
Column two. Your main content.
[/col3]
[col3]
Column three. Supporting details or cross-references.
[/col3]
[/row]
Three columns work well for comparison tables, stat blocks, or timeline layouts where you need parallel information structures. On smaller screens, these also stack vertically.
3. Article Mentions and Links
The mention system is how World Anvil worlds become interconnected. Type an open bracket followed by at least three letters from any article title, and the system offers autocomplete suggestions. In view mode, these become clickable links with hover previews.
The kingdom of [Aldoria] has long warred with the [Thornwood Empire].
Their conflict began when @[Queen Seraphina] broke the [Treaty of Glass].
Both formats work. The @ symbol is optional but makes mentions easier to spot when editing. The linked articles don't need to exist yet. Create placeholder mentions while drafting, then fill in the articles later. World Anvil tracks broken links so you can find them.
4. Article Blocks
When you want more than a text link, article blocks display the linked article's cover image, title, and excerpt. They're visual navigation elements that draw readers deeper into your world.
[articleblock:ARTICLE_ID]
The easiest way to get the correct code is to go to your article list, click the clipboard icon next to any article, and paste the result. You can also scroll to the bottom of any article in edit mode and click "Copy Article Block" above the metadata section. The system inserts the correct ID automatically.
5. Tooltips for Quick Definitions
Tooltips let you add context without cluttering your article or forcing readers to click away. Hover text appears when readers mouse over the marked phrase.
The [tooltip:A rare mineral found only in the northern mountains]mythril ore[/tooltip]
was worth more than gold.
She spoke in [tooltip:The ancient language of the Eldar, now dead]High Elvish[/tooltip],
a tongue few remembered.
The text after the colon becomes the hover content. The text between the tags is what displays in the article. Use tooltips for in-world terminology, quick translations, or brief context that doesn't warrant its own article. Keep tooltip text short. If you need more than a sentence, make a linked article instead.
6. Spoiler Blocks
Spoilers hide content behind a clickable button. Readers choose whether to reveal the information. This is useful for plot secrets, optional lore, or content warnings.
[spoiler]The king is actually a changeling who replaced the real monarch three years ago.[/spoiler]
[spoiler]The treasure map leads to a trap.|Click to reveal the secret[/spoiler]
The default button text is generic. Add a pipe character followed by custom text to label the button. "Click to reveal the secret" or "DM eyes only" or "Content warning: violence" make the spoiler's purpose clear. One limitation: you cannot use BBCode tags with pipe characters inside spoilers, since the system reads the pipe as a button label delimiter.
7. Quotes with Attribution
Character quotes, prophecies, and in-world documents deserve visual distinction from regular prose. The quote tag formats text as a blockquote and optionally displays the source.
[quote]The mountains remember what the valleys forget.[/quote]
[quote|Elder Morvain, 1024 AE]When the last tree falls, the world will remember our names
as curses, not blessings.[/quote]
Add the attribution after a pipe character. The name displays below or beside the quote depending on your world's theme. Quotes break up long articles and add voice to your worldbuilding. A character's words land differently when formatted as a quote rather than embedded in description.
8. The Aloud Tag for Game Masters
If you run tabletop RPGs, the aloud tag highlights text meant to be read directly to players. Most themes display this content in a visually distinct box or with a different background color.
[aloud]You step through the archway and feel the temperature drop.
The torchlight flickers, then steadies. Ahead, the corridor stretches
into darkness, and from somewhere deep within, you hear dripping water
echo off stone walls.[/aloud]
Aloud blocks separate your read-aloud descriptions from your DM notes and mechanical details. When you're at the table, you can find the dramatic text quickly without scanning through stat blocks and secret information.
9. Container and Section Tags
Containers and sections let you apply custom CSS classes to specific parts of your article. Containers create block-level divs. Sections create inline spans. The difference matters for styling.
[container:warning-box]
This area is dangerous. Travelers are advised to hire guards
before crossing the Bleakwood.
[/container]
The [section:magic-text]spell of binding[/section] requires three components.
The text after the colon becomes the CSS class name. You'll need to define those classes in your world's custom CSS for anything to happen visually. A common starter: create a warning-box class with a red border and light red background for danger notices. Create a magic-text class with a glowing effect for spell names. Without custom CSS, containers and sections have no visual effect, but they still add the class to the HTML for future styling.
For those without CSS experience, you can use built-in Bootstrap classes that World Anvil already supports:
[container:panel panel-default card]
[container:panel-body card-body]
Your content here, styled as a card or panel.
[/container]
[/container]
10. Custom Side Panel Fields
World Anvil's article templates have predefined sidebar fields, but sometimes you need custom data. The sidebar tag lets you add your own labeled fields to the sidebar panel.
[sidebar:Population]Approximately 12,000 permanent residents[/sidebar]
[sidebar:Climate]Temperate, with harsh winters[/sidebar]
[sidebar:Government]Merchant oligarchy[/sidebar]
The text after the colon becomes the field label. The content between tags becomes the value. These fields appear in the article's sidebar alongside the template defaults. Use them for world-specific data that doesn't fit the standard template fields.
Format Your Articles. Then Fill Them.
BBCode handles presentation. The 16 Domains of Worldbuilding handles substance, covering geography, culture, religion, economics, and 12 other dimensions to develop inside your World Anvil articles.
Get the 16 DomainsFree resource. One of 75+ storytelling frameworks on Loreteller.
Combining Tags for Complex Layouts
These tags work together. A common pattern for location articles: two columns with the left side containing narrative description and the right side containing quick-reference stats in a custom container.
[row]
[col]
The Sunken Library sits beneath Lake Morenthia, accessible only
through a submerged entrance. Scholars who visit must hold their
breath for the descent, emerging into air pockets maintained by
ancient enchantment.
[quote|Librarian Vex]Not all knowledge is meant to surface.[/quote]
[/col]
[col]
[container:stat-block]
[sidebar:Depth]40 meters below surface[/sidebar]
[sidebar:Accessibility]Swimming required[/sidebar]
[sidebar:Danger Level]Moderate[/sidebar]
[/container]
[/col]
[/row]
Nest your tags carefully. Every opening tag needs a closing tag, and the order matters. If your layout breaks, check that your [/col] tags come before your [/row] tag, and that every container closes before its parent closes.
Basic Formatting Reference
For completeness, here are the basic text formatting tags you'll use constantly:
[b]Bold text[/b]
[i]Italic text[/i]
[u]Underlined text[/u]
[s]Strikethrough text[/s]
[small]Smaller text[/small]
[sup]Superscript[/sup]
[sub]Subscript[/sub]
[left]Left-aligned paragraph[/left]
[center]Centered text[/center]
[right]Right-aligned text[/right]
[justify]Justified paragraph that stretches to fill the full width[/justify]
[br] - Single line break
[hr] - Horizontal rule
Most of these mirror HTML formatting. If you've worked with forums or older CMS platforms, the syntax will be familiar.
Lists in World Anvil
Unordered lists use the [ul] tag. Ordered lists use [ol]. List items are created with hyphens on new lines between the tags.
[ul]
- First item
- Second item
- Third item
[/ul]
[ol]
- Step one
- Step two
- Step three
[/ol]
The hyphen-based syntax differs from HTML's <li> tags. Each line starting with a hyphen becomes a list item. This makes quick lists easy to write but limits nested list structures.
Debugging Common Problems
When your BBCode doesn't render correctly, check these issues first.
Missing closing tags. Every [tag] needs a [/tag]. Copy your code into a text editor and match opening tags to closing tags. Unbalanced tags are the most common formatting error.
Incorrect nesting order. Tags must close in reverse order of opening. If you open row, then col, you must close col before closing row. Think of it like nested boxes: the innermost box closes first.
Pipes in spoilers. The pipe character delimits button text in spoilers. If your hidden content contains pipes (such as BBCode with parameters), the spoiler breaks. Either simplify the hidden content or find a workaround.
Container classes without CSS. If your container or section looks identical to regular text, you haven't defined the CSS class yet. The BBCode works; the styling just doesn't exist. Check your world's custom CSS settings.
Caching issues. Sometimes World Anvil displays old versions of articles. Hard refresh your browser or check in an incognito window to verify your changes actually saved.
Where to Go from Here
These ten snippets handle 90% of formatting tasks. For the remaining 10%, World Anvil's official documentation covers advanced features: embedded maps, interactive timelines, secret visibility permissions for RPG campaigns, and CSS customization for Grandmaster-tier subscribers.
Save this page. The next time you're staring at a broken layout or can't remember the tooltip syntax, you'll know where to look. Good formatting doesn't make a world, but it makes your world readable. That's worth the ten minutes you spend learning these tags.