Analyze a Chat or IRC Log

Paste a chat or IRC log and see who talked most, the busiest hours and weekdays, the most-used words, the links shared, and channel events. Runs locally in your browser — no upload, no account.

Try:
Log report

About this tool

Paste a chat transcript or IRC log to get a local, deterministic activity report. The analyzer counts messages, participants, words, characters, links, channel events, /me actions, busiest hours, and weekday activity without uploading the log anywhere.

It accepts common line shapes such as 21:07 <alice> hey, [21:07:33] <@alice> hey, 2024-01-05 21:07:33 <alice> hey, tab-separated WeeChat exports, and plain alice: hey transcripts. Use the bot exclusion field for service accounts such as gizzabot or wildcard prefixes such as travis*.

Example input:

2024-01-05 21:07:33 <alice> pizza tonight? https://example.com/menu
2024-01-05 21:08:01 <@bob> pizza sounds great
2024-01-05 21:09:00 -!- carol [~c@host] has joined #food
2024-01-06 09:16:10 * alice waves

Example summary output includes:

Messages: 3
Participants: 2
Busiest hour: 21:00
Who talked most
Top words
Links shared
Channel events

Limits and edge cases: the input is capped at 5,000,000 bytes; one pasted log is analyzed at a time; event-only logs return an error because there are no messages to count; weekday stats need dated lines; time-only logs still produce hour stats; ambiguous numeric dates default to day-first unless the data proves month-first; stopword filtering is English-only.

FAQ

Which chat log formats does it understand?

It auto-detects common IRC-style formats with angle-bracket nicks, optional bare or bracketed timestamps, ISO dates, 12-hour AM/PM times, tab-separated WeeChat columns, /me actions, and simple nick: message transcripts. You do not need to choose a format first.

Do joins, parts, quits, and mode changes count as messages?

No. Channel events are counted in the events section, but they are excluded from message, word, link, and participant rankings. /me action lines are counted as messages and also listed separately as actions.

How do I remove bot noise from the results?

Add bot nicks to the exclude field. A comma-separated list such as gizzabot, travis* removes the exact nick gizzabot and every nick beginning with travis from all statistics.

Why is the weekday section empty for my log?

Weekday activity needs full dates. Logs with only times, such as 21:07 <alice> hi, can still report busiest hours and participant rankings, but the analyzer cannot infer the day of week without a date.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool chat-log-analyzer "2024-01-05 21:07:33 <alice> pizza tonight? https://example.com/menu
2024-01-05 21:08:01 <@bob> pizza sounds great
2024-01-05 21:09:00 -!- carol [~c@host] has joined #food
2024-01-06 09:16:10 * alice waves"

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/chat-log-analyzer/?log=2024-01-05%2021%3A07%3A33%20%3Calice%3E%20pizza%20tonight%3F%20https%3A%2F%2Fexample.com%2Fmenu%0A2024-01-05%2021%3A08%3A01%20%3C%40bob%3E%20pizza%20sounds%20great%0A2024-01-05%2021%3A09%3A00%20-%21-%20carol%20%5B~c%40host%5D%20has%20joined%20%23food%0A2024-01-06%2009%3A16%3A10%20%2A%20alice%20waves&output=summary&top=10&min_word_length=3&ignore_stopwords=true&exclude_nicks=gizzabot%2C%20travis%2A

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.