— Developer Tools

Free BBCode Editor

Write a forum post in BBCode to preview it, copy the HTML, convert it to Markdown, or check it for broken tags.

— Samples
Tags 12Problems 0Valid
Live

What is a BBCode Editor?

BBCode is the bracketed markup forums have used for decades: [b]bold[/b], [url]links[/url], [quote]quotes[/quote]. Boards such as phpBB, vBulletin, XenForo and SMF still store posts in it. This editor previews BBCode, shows the HTML it becomes, and converts it to Markdown.

It parses posts with @bbob, a maintained BBCode library, using its HTML5 preset with forum-friendly sizes, alignment and quote authors. Raw HTML in a post stays text, unknown tags are left as written, and a check view lists tags, links and images with problems such as unclosed tags and unsafe links.

Key Features

Live Preview

Bold, italic, underline, strike, links, images, quotes, code, lists, colours, sizes, alignment and tables.

HTML Output

The HTML a post becomes, to paste into a site that doesn’t read BBCode.

BBCode to Markdown

Convert posts for Discourse, GitHub or a static site, with notes on formatting Markdown can’t keep.

Problem Check

Unclosed and unknown tags, bad colours and sizes, and links that aren’t web or email addresses.

Safe by Design

Raw HTML is escaped and the preview is sanitised. Remote images aren’t loaded.

Perfect for everyone

  • Forum moderators and admins
  • Community managers migrating boards
  • Anyone writing posts for BBCode forums

How to Use the BBCode Editor

Write or paste a post, then pick a view. The preview, HTML and Markdown all come from the same parse, so they always agree with each other.

1

Write the Post

Type BBCode or paste a post copied from a forum’s editor.

2

Preview It

See the post as it will look, with quotes, lists and code formatted.

3

Convert It

HTML gives markup for a website; Markdown gives a post for a Markdown platform.

4

Check It

Check lists tags and links, and any problems to fix before posting.

Worked Examples

BBCode, Rendered

Each row is BBCode as forum members write it, and each answer is this editor’s output in the mode on the chip: the HTML @bbob produces, the Markdown conversion or the check. The HTML is what the preview draws after sanitising.

REF_001A forum announcement as HTML

“[size=5][b]Server maintenance this Saturday[/b][/size] [quote=Moderator]The forum will be read-only from 02:00 to 04:00 UTC.[/quote] What changes: [list] [*][b]Faster search[/b] across all boards [*]New [url=https://example.com/rules]posting rules[/url] [*][color=#b00]Old attachments over 5 MB[/color] will be removed [/list] [center][i]Thanks for your patience![/i][/center]”

REF_002A reply converted to Markdown

“[b]Fix for the login loop[/b] [list=1] [*]Clear the cookie [i]session_id[/i] [*]Run this in the console: [/list] [code]localStorage.removeItem("token");[/code]”

REF_003The four text styles

“[b]bold[/b] [i]italic[/i] [u]underline[/u] [s]strike[/s]”

REF_004A quote with its author, as Markdown

“[quote=Ada]Ship it on [b]Friday[/b].[/quote]”

REF_005Forum sizes and percentages

“[size=1]tiny[/size] [size=7]huge[/size] [size=200]double[/size]”

REF_006Raw HTML stays text

“<b>not bold</b> and [b]bold[/b]”

REF_007Three kinds of link as Markdown

“[url]https://example.com[/url], [url=https://example.com/docs]the docs[/url] or [email]help@example.com[/email]”

REF_008Tags, links and problems in a post

“[size=5][b]Server maintenance this Saturday[/b][/size] [quote=Moderator]The forum will be read-only from 02:00 to 04:00 UTC.[/quote] What changes: [list] [*][b]Faster search[/b] across all boards [*]New [url=https://example.com/rules]posting rules[/url] [*][color=#b00]Old attachments over 5 MB[/color] will be removed [/list] [center][i]Thanks for your patience![/i][/center]”

REF_009Three problems

“[b]Unclosed bold and a [spoiler]custom tag[/spoiler], plus [url=javascript:alert(1)]a bad link[/url]”

REF_010A table as a GFM table

“[table][tr][th]Plan[/th][th]Price[/th][/tr][tr][td]Pro[/td][td]10 USD[/td][/tr][/table]”

Tag Reference

The BBCode Tags Most Forums Share

Every forum adds its own tags, but these ten work almost everywhere and are the ones this editor understands. Tags not listed here stay as plain text in the preview.

01 / B

[b], [i], [u], [s]

Bold, italic, underline and strikethrough, closed with a slash: [b]text[/b].

“How do you strike text through?”

02 / URL

[url]

A link: [url]https://example.com[/url], or [url=https://example.com]label[/url] for custom text.

“How do you change a link’s text?”

03 / EMAIL

[email]

A mail link, written like [url] but with an address.

“What does [email] produce?”

04 / IMG

[img]

An image from an address: [img]https://example.com/photo.png[/img].

“Does the preview load it?”

05 / QUOTE

[quote]

A quotation, with [quote=name] naming who said it.

“How do you credit the quote?”

06 / CODE

[code]

Preformatted text where tags aren’t applied, for code and logs.

“Is BBCode inside [code] applied?”

07 / LIST

[list] and [*]

[list] starts bullets, [list=1] numbers, and [*] starts each item.

“What starts each item?”

08 / COLOR

[color]

Text colour by name or hex, as in [color=#b00]warning[/color].

“Which values work?”

09 / SIZE

[size]

Text size: 1 to 7 on most forums, a percentage on phpBB, points on SMF.

“What is [size=7]?”

10 / CENTER

[center]

Centres a block, with [left] and [right] for the other sides.

“Is [center] standard?”

Moving a Forum to Markdown

Communities often leave old BBCode boards for Discourse, GitHub Discussions or a static site, which all speak Markdown. The conversion here follows these rules, so you know what survives a migration and what needs a manual touch.

Styles

[b], [i] and [s] become **bold**, *italic* and ~~strike~~. [u] has no Markdown form and is dropped.

Links and Email

Links with a label become [label](address); bare links and emails become autolinks in angle brackets.

Quotes

Quotes become blockquote lines starting with >, with the author in bold on the first line.

Lists

Bulleted lists use hyphens and numbered lists use 1., 2. and so on, nested by indentation.

Code

[code] becomes a fenced code block, which keeps its spacing exactly.

Tables

Tables become GitHub-flavoured Markdown tables, with the first row as the header because GFM requires one.

What’s Lost

Colours, sizes, underline and alignment have no Markdown equivalent. A comment at the end names each tag dropped.

Why BBCode Exists

Forums adopted BBCode in the late 1990s so members could format posts without being allowed to write HTML. That design goal still shapes how a safe BBCode renderer behaves, including this one.

Tip 01

No Raw HTML

Members can’t inject scripts or styles, because only listed tags become markup.

Tip 02

A Fixed Tag List

Admins decide which tags exist, and anything else stays as typed text.

Tip 03

Link Checks

Links should only ever be web or mail addresses, never javascript: or data: URLs.

Tip 04

Images by Address

Hotlinked images reveal readers’ IP addresses to the image host, so this preview doesn’t load them.

Tip 05

Sanitise the Output

Even BBCode output should pass through an HTML sanitiser before display, as it does here.

BBCode Across Forum Software

BBCode has no governing standard, so every forum package reads a slightly different dialect. The core tags behave the same everywhere, but sizes, embeds and custom tags vary, which matters most when you move posts from one board to another.

phpBB

Sizes are percentages, so [size=150] is one and a half times normal. Since 3.2, posts are stored as XML from the s9e TextFormatter library and turned back into BBCode for editing.

vBulletin

Sizes run from 1 to 7 like old HTML font sizes. It adds tags such as [highlight] and [noparse], which this editor leaves as text.

XenForo

Sizes also run from 1 to 7, and [media] embeds videos while [user] links a member. Neither is in the shared set, so they show as typed.

SMF

Simple Machines Forum writes sizes in points, such as [size=10pt], which this editor reads. Older versions added effects like [glow] and [shadow].

MyBB

MyBB’s editor writes sizes as CSS names such as [size=large], which this editor accepts alongside numbers.

Discourse

Discourse is a Markdown forum, but it still reads common BBCode such as [b], [quote] and [url], so converted and unconverted posts can sit side by side.

How This Editor Turns BBCode into HTML

The HTML view shows exactly what the preview draws, before sanitising. These are the choices behind it, so you know what to expect when you paste the markup into a page or a newsletter template.

Tip 01

Inline Styles

Bold, italic, underline, strike, colour and size become spans with a style attribute, so they work without a stylesheet.

Tip 02

Line Breaks

Each new line becomes a line break, except after quotes, lists, code and alignment blocks, which already start a new line.

Tip 03

Alignment

[center], [left] and [right] become a block with text-align, since the old center element is gone from HTML.

Tip 04

Quote Authors

[quote=name] puts the name in a cite element at the start of the quotation.

Tip 05

Escaped HTML

Angle brackets in the post are escaped first, so typed HTML shows as text and can never become markup.

When to Use a BBCode Editor

Whenever a post needs checking or moving, especially when the forum’s own editor isn’t available or you are working on many posts at once.

Drafting Posts

Write long announcements with lists and quotes and check them before posting.

Forum Migrations

Convert old posts to Markdown and see which formatting needs attention.

Moderation

Check a reported post for hidden links or broken tags.

Embedding Posts

Turn a post into HTML for a blog or newsletter.

Learning BBCode

Try tags and see the result straight away.

BBCode Pitfalls

Mistakes that make posts render wrongly, most of which a forum’s editor won’t warn you about until the post is already live.

Tip 01

Forgotten Closing Tags

An unclosed [b] or [quote] can format the rest of the post, or nothing at all.

Tip 02

Crossed Tags

[b][i]text[/b][/i] closes in the wrong order. Close the inner tag first.

Tip 03

Forum Differences

Sizes, spoilers and media tags differ between phpBB, vBulletin and XenForo.

Tip 04

Spaces in Tags

[ b ] isn’t a tag. Brackets and names must touch.

Tip 05

Quotes in Attributes

Some forums accept [url="…"] with quotes and some don’t.

Tip 06

Images Breaking

Hotlinked images disappear when the host removes them. Upload to the forum instead.

Frequently Asked Questions