Message formatting

Zulip supports an extended version of Markdown for messages, as well as some HTML level special behavior. The Zulip help center article on message formatting is the primary documentation for Zulip's markup features. This article is currently a changelog for updates to these features.

The render a message endpoint can be used to get the current HTML version of any Markdown syntax for message content.

Code blocks

Changes: As of Zulip 4.0 (feature level 33), code blocks can have a data-code-language attribute attached to the outer HTML div element, which records the programming language that was selected for syntax highlighting. This field is used in the playgrounds feature for code blocks.

Global times

Changes: In Zulip 3.0 (feature level 8), added global time mentions to supported Markdown message formatting features.


Changes: In Zulip 9.0 (feature level 247), channel was added to the supported wildcard options used in the mentions Markdown message formatting feature.


Changes: In Zulip 3.0 (feature level 15), added spoilers to supported Markdown message formatting features.

Removed features

Changes: In Zulip 4.0 (feature level 24), the rarely used !avatar() and !gravatar() markup syntax, which was never documented and had an inconsistent syntax, were removed.