ChatGPT Word Count Badge
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
ChatGPT Word Count Badge automatically detects messages in your ChatGPT conversations and calculates word and character counts for each message and the entire conversation. A compact badge displays the total word count, character count, and message count, with optional per-message word counts displayed next to each message. This helps you track the length of your conversations, monitor your usage, and keep an eye on response lengths. The badge updates in real-time as you continue chatting, and all settings are fully customizable.
WHERE IT RUNS
This extension works exclusively on ChatGPT at chatgpt.com. It functions on conversation pages, including the main chat interface and any page displaying a conversation history. The tool works across all ChatGPT versions and adapts to the dynamic chat interface.
HOW TO USE
Install the extension and start a conversation on ChatGPT. A compact badge appears in the corner of the page showing total words, characters, and message count. Use the overlay panel to customize the display: toggle total words on or off, toggle total characters on or off, toggle message count on or off, toggle per-message word counts on or off (shows word count next to each message), toggle the badge visibility on or off, and select the badge position (Top Right, Top Left, Bottom Right, or Bottom Left). Click "Refresh Count" to manually update the counts. The status area shows the current counts.
TECHNICAL SECTION — MESSAGE DETECTION AND COUNTING
The extension uses a multi-strategy detection engine to find messages on ChatGPT pages. It queries known message selectors including [data-message-author-role="user"] and [data-message-author-role="assistant"], and scans for message containers using class patterns. Each message's content is extracted from prose or markdown containers. Word count is calculated by splitting the text by whitespace and filtering empty strings. Character count is calculated as the length of the text string. Total counts are aggregated across all messages. The badge is created using DOM manipulation with inline CSS and can be positioned in any corner of the screen. Per-message counts are inserted as small badges next to each message. A MutationObserver monitors the DOM for new messages, automatically updating the counts.
THE PANEL — DRAG / PER-SITE POSITION / SNAP / COLLAPSE / RESIZE / ESCAPE
The overlay panel is fully interactive and designed for seamless multitasking. Drag it anywhere on the screen using the handle at the top of the panel; the position is saved per site so it stays where you left it across sessions. The panel includes a snap-to-edge feature that gently anchors the overlay to the nearest screen edge when released. Click the collapse button to minimize the panel to a compact pill showing the current word status; expand it again with a single click. Resize the panel vertically by dragging the bottom-right corner to view more controls. Press the Escape key at any time to instantly close the overlay; it reappears on the next page navigation or refresh.
PLEASE NOTE
This extension requires the free BotGentz companion extension to function, as it provides the underlying content script injection and cross-origin communication framework. No personal data, browsing history, or conversation content is stored, transmitted, or shared. All text processing occurs entirely locally in your browser; no information is sent to any external server. Settings are stored locally in your browser using GM_setValue and are never sent to any external server. The extension does not access or store login credentials, financial data, or personally identifiable information. The tool reads conversation messages visible on the page and does not access ChatGPT's API or any private data. ChatGPT may update its page structure; the extension includes multiple detection strategies to maintain compatibility, but major redesigns may temporarily affect message detection. Counts are based on visible messages and update as new messages appear.