Status Emoji in Tech

26 emoji you'll meet in Slack threads, GitHub PRs, Jira tickets, and commit messages β€” what each one signals, when to use it, and the alias to type it.

Last reviewed:

Why developers speak in emoji

On distributed, async teams a single emoji carries a whole sentence. A βœ… reaction closes a thread without a reply; a πŸ‘€ says "I'm reviewing this"; a πŸš€ in a channel means "we just shipped". Emoji are fast, scannable, and language-agnostic β€” which is exactly why the conventions below have settled into a shared vocabulary across companies.

Sections

Status & outcome

βœ…

Done / Passing

:white_check_mark:

A task is complete, a check passed, or a box is ticked.

When: Mark a checklist item finished, signal a green CI run, or confirm a request is handled.

Used in: Slack, GitHub, Jira, commit

❌

Failed / Rejected

:x:

Something failed, was rejected, or is not done.

When: A test failed, a PR was declined, or an item is explicitly not happening.

Used in: Slack, GitHub, Jira

🟒

Green status

:large_green_circle:

All healthy / operational. The "everything is fine" light.

When: Status dashboards, on-call channels, and incident threads to show services are up.

Used in: Slack, status pages

🟑

Yellow status

:large_yellow_circle:

Degraded or warning β€” working, but not fully healthy.

When: Partial outage, elevated latency, or a metric trending the wrong way.

Used in: Slack, status pages

πŸ”΄

Red status

:red_circle:

Down, blocked, or critical. The "stop, this is broken" light.

When: Outage declared, build broken, or a blocker that stops the team.

Used in: Slack, status pages

🎯

Goal / Target

:dart:

A goal, objective, or the thing we are aiming at.

When: Sprint goals, OKRs, or calling out the precise outcome a piece of work targets.

Used in: Slack, Jira

Work in progress

🚧

Work in progress

:construction:

Under construction β€” not finished, handle with care.

When: Draft PRs, WIP commits, or sections of a doc that aren't ready.

Used in: Slack, GitHub, commit

⏸️

Paused / On hold

:pause_button:

Work is intentionally paused β€” not abandoned, just not active right now.

When: A ticket parked pending a decision, or a project waiting on a dependency.

Used in: Slack, Jira

πŸ”„

In review / Syncing

:arrows_counterclockwise:

In progress in a cyclical sense β€” under review, syncing, or being reprocessed.

When: A PR awaiting review, data syncing, or a retry loop in progress.

Used in: Slack, GitHub

πŸ‘€

Reviewing / Eyes on

:eyes:

Someone is looking at it β€” acknowledging or actively reviewing.

When: React to a PR or message to say "I'm on it / I've seen this".

Used in: Slack, GitHub

πŸ’‘

Idea / Suggestion

:bulb:

A suggestion, idea, or non-blocking proposal.

When: Offer an alternative in a review, or flag a thought without demanding a change.

Used in: Slack, GitHub

Changes & releases

πŸš€

Deploy / Ship / Launch

:rocket:

Shipping it β€” a deploy, release, or launch.

When: Announce a release, kick off a deploy, or celebrate going live.

Used in: Slack, GitHub, commit

πŸ’₯

Breaking change

:boom:

A change that breaks backward compatibility β€” consumers must update.

When: Flag a breaking API change in a PR title, changelog, or commit.

Used in: GitHub, commit

⚑

Performance

:zap:

A performance or speed improvement.

When: Mark a commit or ticket that makes something faster or lighter.

Used in: GitHub, commit

⬆️

Upgrade dependency

:arrow_up:

Bump a dependency to a newer version.

When: Dependency-update PRs and commits (often automated by bots).

Used in: GitHub, commit

⬇️

Downgrade dependency

:arrow_down:

Roll a dependency back to an older version.

When: When a new version broke something and you need to revert it.

Used in: GitHub, commit

Bugs, fixes & review

πŸ›

Bug

:bug:

A defect β€” something behaves incorrectly.

When: Label a bug report, a fix commit, or a Jira issue type.

Used in: Slack, GitHub, Jira, commit

πŸ”₯

Hotfix / Urgent

:fire:

On fire β€” urgent, needs attention now.

When: Flag a production problem or an urgent fix going out fast.

Used in: Slack, commit

πŸš‘

Critical hotfix

:ambulance:

An emergency fix for a critical production issue.

When: A patch that goes straight out to stop active damage. Stronger than πŸ”₯.

Used in: GitHub, commit

πŸ”’

Security fix

:lock:

A change that addresses a security vulnerability.

When: Security patches in commits and changelogs, often after a CVE.

Used in: GitHub, commit

πŸ“

Docs

:memo:

Documentation β€” writing or updating it.

When: Commits and PRs that only touch docs, READMEs, or comments.

Used in: GitHub, commit

gitmoji commit standard

✨

New feature

:sparkles:

gitmoji: introduce a new feature.

When: The canonical gitmoji prefix for feature commits β€” "✨ Add dark mode".

Used in: commit (gitmoji)

♻️

Refactor

:recycle:

gitmoji: refactor code without changing behaviour.

When: Restructuring or tidying code with no functional change.

Used in: commit (gitmoji)

✏️

Typo fix

:pencil2:

gitmoji: fix a typo.

When: Tiny text corrections in code, docs, or copy.

Used in: commit (gitmoji)

🎨

Code style

:art:

gitmoji: improve structure or format of the code.

When: Formatting, linting, and style-only changes.

Used in: commit (gitmoji)

πŸ§ͺ

Tests

:test_tube:

gitmoji: add or update tests.

When: Commits that add, fix, or refactor tests.

Used in: commit (gitmoji)

The gitmoji standard

gitmoji is a popular convention for emoji-driven commit messages. Each commit starts with an emoji that signals its intent, so a glance down the git log tells you what kind of change each commit is β€” feature, fix, refactor, docs β€” without reading every message.

✨ Add user profile export
πŸ› Fix off-by-one in pagination
♻️ Refactor auth middleware
πŸ§ͺ Add tests for token refresh
πŸ“ Update README install steps
⚑ Cache the expensive lookup
πŸ”’ Patch XSS in comment renderer

Tooling like the gitmoji-cli helps you pick the right emoji interactively. Some teams pair it with Conventional Commits (e.g. feat:, fix:); others use one or the other. Pick one convention and apply it consistently.

A note on culture

Emoji don't mean the same thing everywhere. A πŸ‘ thumbs-up reads as a friendly "got it" to many, but in parts of the Middle East and West Africa it can be offensive, and across much of Gen Z online it can come across as passive-aggressive or dismissive β€” a curt "fine, whatever". The πŸ™ folded hands emoji is read as "thank you" or "please" by some, as "prayer" by others, and as a "high five" by a few.

On a global team, prefer unambiguous status markers (βœ… ❌ 🚧 πŸ”΄) for anything that matters, and use a quick word when a reaction could be misread. When in doubt, write the sentence.

English phrases engineers use

  • "I dropped a βœ… on your message β€” no need to reply."
  • "It's still 🚧 WIP, don't review it yet."
  • "πŸš€ Shipping to prod in five minutes β€” heads up."
  • "There's a πŸ› in the export, I filed a ticket."
  • "Putting πŸ‘€ on this PR now."
  • "Marked the service πŸ”΄ red β€” we have an outage."
  • "Prefix the commit with ✨ for a feature, ♻️ for a refactor."

Frequently Asked Questions

What's the difference between reacting with βœ… vs. posting πŸš€ in a Slack channel?

A βœ… reaction is a personal, low-key acknowledgement β€” "I saw this, it's handled" β€” that closes a thread without adding a new message. Posting πŸš€ as a message (rather than a reaction) is a broadcast to the whole channel that something shipped or went live, meant to be seen by everyone, not just the thread participants.

What does the gitmoji convention mean by prefixing commits with an emoji like ✨ or πŸ›?

gitmoji is a standard where each commit message starts with an emoji that categorises the type of change β€” ✨ for a new feature, πŸ› for a bug fix, ♻️ for a refactor, πŸ§ͺ for tests. Scanning a git log then tells you at a glance what kind of work each commit represents without reading every full message.

What's the difference between πŸ”₯ and πŸš‘ for signaling urgency?

πŸ”₯ flags something urgent β€” a production problem that needs attention or a fix going out fast. πŸš‘ (critical hotfix) is a step above it: an emergency patch shipped specifically to stop active damage right now, reserved for the more severe case rather than general urgency.