Phasmophobia awards over a dozen in-game badge categories — prestige ranks, limited-time seasonal drops, developer and contributor marks, and the ID card title you wear in the lobby — and any of them can be mirrored as a custom README badge by running the wording through the Badge Generator. The generator wraps Shields.io's static badge path, escapes literal dashes and underscores so they survive the URL, exposes named and hexadecimal color choices, and returns a direct image URL, a Markdown snippet, and an HTML image tag from a single form. The badge itself is rendered live by Shields.io as soon as you confirm the preview, so the snippet you paste into a README, a documentation page, or a personal site is the same image your visitors will see. You do not need to remember how the badge path separates label, message, and color, how spaces are encoded, or which query parameters control the style and logo. Enter the text, pick the color, optionally add a Simple Icons slug, and copy the result. That is the entire bridge between an in-game Phasmophobia badge and a documentation badge that the rest of the open-source world can read at a glance.

how to get badges in phasmophobia
Show Phasmophobia Badges as a README Badge

Phasmophobia Badge Types Worth Showing in a README

Phasmophobia's ID card surfaces a small selection of titles, marks, and seasonal rewards, and the rest of the badge ecosystem lives behind prestige levels and event windows. The categories that translate cleanly into a README badge are:

  • Prestige rank badges — awarded each time you reset your level at the lobby's bulletin board; commonly shown as "Prestige 1" through "Prestige 5" and beyond, and the badge copy is almost always a number paired with the word Prestige.
  • Seasonal event badges — Halloween, Christmas, and other limited drops tied to specific years; their wording often includes the year, which makes them clear markers of when you were active.
  • Developer and contributor badges — reserved for Kinetic Games staff, partners, translators, and competition winners; not earnable through normal play, but useful to display if you are one of those contributors and want to mark the role on a personal site.
  • ID card titles and profile marks — the cosmetic title or emblem you select on your in-game ID card, which doubles as a personal signature that other players see in the lobby.

A README badge cannot fetch live data from Phasmophobia, so any value you display — prestige rank, event year, contributor role — should reflect what you actually hold when you paste the snippet in. A static badge is a frozen statement of fact at the moment you copied it.

Why Hand-Built Shields.io URLs Get Phasmophobia Copy Wrong

Shields.io's static badge syntax looks deceptively simple: a path of the form /badge/{label}-{message}-{color}. The Shields.io badge reference documents the full grammar, but the moment you add a style, a label color, or a logo, the URL grows parameters that must be URL-encoded, escaped, and kept in the correct order. Phasmophobia badge copy is unusually hostile to that grammar:

  • Words like Phasmophobia or Prestige contain no separators, but event titles such as "Halloween 2025" introduce spaces, and contributor titles can contain dashes or underscores that Shields.io interprets as path separators.
  • The doubling rule — a literal dash becomes -- and a literal underscore becomes __ to preserve them in the visible text — is easy to forget and easy to apply to the wrong character.
  • Adding a Simple Icons slug for a logo, a style such as flat-square, or a label color requires query parameters whose keys must be added in the documented order.
  • The final output must remain valid inside Markdown, which has its own escaping rules, and inside HTML, which requires an alt attribute, properly escaped quotes, and a matching closing bracket.

The Badge Generator handles the path, the escaping, and the parameter formatting for you. You type the visible text, pick a color from a short named list or a hex value, choose a style, optionally add a logo slug, and the generator returns three ready-to-paste forms. The preview image loads from Shields.io so you see exactly what your readers will see before you commit to any snippet. Because every static badge endpoint follows the same pattern the generator builds, the result is standards-compliant rather than a one-off URL that just happens to render.

Build the Phasmophobia README Badge

  1. Open the Badge Generator and enter the left-side label that should appear on the badge — for a Phasmophobia badge this is typically "Phasmophobia", "Prestige", or the event name such as "Halloween 2025".
  2. Enter the right-side message with the actual value you want to show: "Prestige 5", "Event 2024", "Contributor", or your selected ID card title.
  3. Choose a badge color that matches the badge context — blue or a value such as 1f6feb for current prestige, purple or 6f42c1 for seasonal events, green or 2ea043 for contributor status.
  4. If you want the left-hand label in a different color from the message, set a label color in the same named or hex form; otherwise leave it blank so the badge uses one color block.
  5. Pick a supported style — flat, flat-square, plastic, for-the-badge, or social — and confirm the live Shields.io preview matches the size where the badge will actually appear.
  6. Optionally add a Simple Icons slug such as github or gitlab if you want a logo on the left side; leave the field empty for a text-only Phasmophobia badge.
  7. Copy the image URL, the Markdown snippet, or the HTML image tag from the output area, paste it into the README, docs file, or HTML page, and verify the rendered result.

Color, Style, and Logo Choices That Read Well

Phasmophobia's visual identity leans dark — deep blues, blacks, and amber accents for evidence rooms — and the badge colors should reinforce that mood rather than fight it. The table below matches common Phasmophobia contexts with a color suggestion that pairs well with both light and dark README themes.

Badge contextSuggested labelSuggested messageSuggested color
Current prestige rankPhasmophobiaPrestige 5blue or 1f6feb
Seasonal event participationPhasmophobiaHalloween 2025purple or 6f42c1
Developer or contributorPhasmophobiaContributorgreen or 2ea043
ID card title showcasePhasmophobiaTitle Nameblack or 0e1a2b

Style choice matters at small sizes. flat is the default and renders with subtle shadows; flat-square removes those shadows and looks crisper in a vertical badge stack; for-the-badge uses heavier type and is harder to scan at 12 pixels. Preview two or three styles at the size you actually plan to use before copying anything. If a logo does not appear, double-check the slug against the current Simple Icons catalog — the slug field only validates shape, not whether the icon currently exists.

Paste the Snippet Into a README, Docs Page, or Personal Site

The generator returns three forms. The direct image URL is the right choice when you want a plain remote image and the destination system accepts one. The Markdown form is the right choice for GitHub or GitLab READMEs, issue templates, release notes, and any other document that already renders CommonMark — for example:

![Phasmophobia](https://img.shields.io/badge/Phasmophobia-Prestige_5-blue?style=flat)

The HTML form is the right choice when the destination accepts raw markup, when you need an accessible alt attribute, or when the page does not render Markdown. The generator escapes the alt attribute and emits a closing tag you can paste directly:

<img src="https://img.shields.io/badge/Phasmophobia-Prestige_5-blue?style=flat" alt="Phasmophobia">

GitHub and GitLab both render shields.io badges inside README files, and the GitLab project badges documentation covers the broader badge system if you eventually want to integrate project-wide coverage or pipeline badges alongside your personal Phasmophobia showcase. Cache is the only recurring gotcha — if the destination platform proxies remote images, a later style change may take time to show up because the old image is still cached. For most README readers, refreshing the page or hard-reloading is enough.

When a Static Badge Is the Wrong Tool

A static badge is a frozen statement of fact at the moment you copied it. If your prestige rank is "Prestige 5" today, the badge will still say "Prestige 5" after you prestige again next week. The Badge Generator is explicitly a static tool: it does not poll Phasmophobia, it does not track your live XP, and it does not update automatically when the game updates. Dynamic badges are a separate class of endpoint that pulls from a CI system, a package registry, or a verified external service. Use the Badge Generator for stable labels — the fact that you reached a rank, participated in an event, or hold a contributor role. If you need a badge that reflects current XP, online status, or session progress, point at the relevant Shields.io dynamic endpoint or back the badge with a feed you control. Color alone should not carry the full meaning on its own — readers may not see it correctly on every display — so wrap the badge in surrounding prose that explains what the label means in your context.

Troubleshooting the Generated Badge

If the badge does not render at all, the most common cause is a stray space, dash, or underscore that the generator either rejected or encoded differently than you expected. Validation in the generator is strict: labels and messages must contain visible text, stay within a practical length limit, and cannot include control characters. Colors accept a compact named form or three- and six-digit hexadecimal values, with a leading hash stripped automatically. Logo slugs are checked against the Simple Icons pattern, not against the current catalog — so a typo in the slug will pass validation and then show no logo in the preview.

If the badge renders but the wrong text appears, the most common cause is the doubling rule: a literal dash or underscore inside visible text is encoded as -- or __ in the path. The generator applies that rule for you, so a manual paste of the same text into a static badge path usually means you also need to apply the rule by hand.

If the badge renders correctly on your screen but appears broken for someone else, the cause is almost always caching or an image proxy at the destination. Update the snippet to point at a new query string — Shields.io treats different style and label-color combinations as distinct images — or have the destination platform clear its image cache. The generator runs entirely client-side except for the live preview, requires no account, and does not save a badge history, so the only persistent record of the badge is the snippet you pasted into your file.