/tellraw @a {"text":""}{
"text": ""
}The /tellraw command sends a JSON-formatted text message to players. It supports 16 named colors plus hex codes, every formatting style, click events, and hover text. This generator builds the JSON for you so you never have to write it by hand.
The syntax is /tellraw [target] [JSON text component]. The target is a player selector such as @a (all players) or @p (nearest player). The JSON component can be a simple quoted string or an object with text, color, formatting, and event properties.
The downside of /tellraw is that the JSON gets long fast. A message with three colored segments and a click event can run past 200 characters. This generator handles the structure: fill in the fields and copy the finished command.
| Property | Type | Description |
|---|---|---|
| text | string | Literal text content to display |
| color | string | Named color or hex #RRGGBB (1.16+) |
| bold | boolean | Bold formatting |
| italic | boolean | Italic formatting |
| underlined | boolean | Underline formatting |
| strikethrough | boolean | Strikethrough formatting |
| obfuscated | boolean | Randomized, scrambled characters |
| clickEvent | object | Action on click: run_command, suggest_command, open_url, copy_to_clipboard |
| hoverEvent | object | Tooltip on hover: show_text, show_item, show_entity |
| selector | string | Dynamic entity selector (@p, @a, @e, etc.) |
| score | object | Display a scoreboard value for a player and objective |
| keybind | string | Show the player's bound key (e.g., key.jump) |
| extra | array | Child components that inherit parent formatting |
Inheritance: child components in the extra array inherit the parent's formatting. If the parent is bold and red, every child is bold and red until it overrides those properties. Since Java Edition 1.16 you can also use hex codes like #FF5555 for any RGB color.
Server welcome messages: run /tellraw @a from a command block triggered by a player detector to greet players with formatted text. Add a click event to run a /tp command for a clickable teleport link.
Interactive menus: build clickable text menus for adventure maps and minigames. Each segment can run a different command on click, which covers class selection, shop systems, and warp menus without mods.
Scoreboard display: use the score component to show live scoreboard values inline, such as the nearest player's kill count, mixed with the rest of your message.
Datapack feedback: datapack developers prefix messages with a colored name tag like [MyPack] in green, then add the message in gray. It is the standard pattern for colored feedback in professional datapacks.
The /tellraw command sends a JSON-formatted text message to one or more players. Unlike /say or /msg, tellraw supports colors, bold, italic, strikethrough, obfuscation, click events that run commands or open URLs, hover text, dynamic selectors, scoreboard values, and keybind references.
The syntax is /tellraw <target> <JSON text component>. The target is a player selector like @a (all players) or @p (nearest player). The JSON component can be a simple string in quotes, or an object with text, color, bold, italic, clickEvent, hoverEvent, and other properties.
Add a color property to your JSON text component. Minecraft supports 16 named colors (black, dark_blue, dark_green, dark_aqua, dark_red, dark_purple, gold, gray, dark_gray, blue, green, aqua, red, light_purple, yellow, white) plus custom hex colors in the format #RRGGBB since Java Edition 1.16.
Yes. Add a clickEvent with action run_command to execute a command when a player clicks the text. Other click actions include suggest_command (fills the chat bar), open_url (opens a link), copy_to_clipboard (copies text), and change_page (for books).
The /tellraw command sends formatted text to the chat window. The /title command displays large text in the center of the screen, smaller text below it, or text above the hotbar. Both use the same JSON text component format, but they appear in different locations on screen.
Browse more Minecraft tools: