Check if an email is phishing. Paste it for a risk score with every red flag explained - link mismatches, lookalike domains, urgency. Nothing is uploaded.
Someone has forwarded you a message and asked whether it is real. You have perhaps two minutes, the message looks plausible, and the honest answer is that "it looks fine" is not a method. What you want is a checklist applied consistently — who really sent it, where the links really go, what the language is doing to you, and whether anything is attached that has no business arriving unsolicited.
Paste the full raw message here — headers and body together — and every one of those checks runs at once, in your browser, producing a risk score from 0 to 100, a verdict, and a list of the specific findings with the evidence that triggered each one. Nothing is uploaded. That is not a nicety: a suspicious email routinely contains the recipient's name, internal addresses, an invoice number and a live payload URL, and pasting it into a server-side scanner hands all of it to a third party. The analysis here happens in the tab; so does the optional plain-English explanation, which runs a local model in your browser and never sends the message anywhere.
The tool needs headers, not just the visible body. In Gmail, open the message and choose Show original, then copy the whole page. In Outlook desktop, File → Properties exposes the internet headers, or Save As → .eml and open the file in a text editor. In Apple Mail, View → Message → Raw Source. If you paste only the body, link and language checks still work but every sender check has nothing to read.
Every finding carries a severity, and severities carry fixed weights: critical adds 40 points, high 25, medium 12, low 5. The total is capped at 100. A score of 50 or above returns likely phishing, 20 to 49 returns suspicious, and below 20 returns probably safe. The scoring is deterministic — the same message always produces the same score.
| Finding | Severity | What it means |
|---|---|---|
| Link points somewhere other than it claims | Critical | The visible link text names one domain, the href goes to another |
| Display name impersonates a brand | Critical from a free mailbox, otherwise high | The sender name says PayPal, Microsoft, Amazon and so on, but the domain does not back it up |
| Dangerous attachment type | Critical | Filename ends in exe, scr, js, vbs, jar, hta, iso, img, lnk, cmd, bat or ps1 |
| Reply-To domain differs from sender | High | Your reply would go to a different domain than the apparent sender |
| Link uses a raw IP address | High | Real organisations link to names, not bare addresses |
Link uses punycode (xn--) | High | An internationalised domain that can hide lookalike characters |
| Lookalike domain | High | The link's registrable name is within two character edits of a commonly impersonated brand |
| Requests credentials or sensitive data | High | Phrases asking you to confirm a password, card number or SSN |
| Urgency / pressure language | Medium, high at four or more phrases | Two or more deadline-and-consequence phrases in subject or body |
| Return-Path domain differs from sender | Medium | The envelope address does not match the From domain |
| Official-sounding subject from a free mailbox | Medium | Invoice, payment, billing, refund or security language sent from a consumer provider |
| Link uses a URL shortener | Medium | The real destination is hidden behind a redirect |
| Risky attachment type | Medium | docm, xlsm, pptm, zip, rar, 7z, htm or html |
| Credential-harvest keywords in the URL path | Low | Two or more of login, signin, verify, account, secure, webscr and similar stacked in one path |
| Generic greeting | Low | "Dear Customer", "Dear valued customer" — mass mail that does not know your name |
The built-in sample is a PayPal-themed credential phish. It scores 100 — likely phishing, on four high findings and two low ones (25 × 4 plus 5 × 2 is 110, capped at 100): the Reply-To domain (verify-account.info) does not match the From domain, the only link points at a raw IP address, nine separate urgency phrases appear across subject and body, the message asks the reader to confirm a password and a card number, the link path stacks login, secure and verify, and the greeting is "Dear Customer".
Worth noticing what the sample does not trigger: the display-name impersonation check stays silent, because the sending domain is paypal-secure-team.com and it contains the string "paypal". That check asks whether the brand named in the display name appears in the domain at all, so an attacker who registers a domain with the brand inside it defeats it. This is precisely why the score is built from many independent rules rather than one clever one.
A second example shows the critical findings firing. An invoice message with the display name "Microsoft 365" sent from a gmail.com address, whose visible link text reads https://login.microsoft.com/ while the href goes to micros0ft-billing.com, and which attaches invoice.exe, produces three critical findings — brand impersonation from a free mailbox, a link that lies about its destination, and an executable attachment — plus medium findings for the official-sounding subject from a consumer mailbox and the urgency phrasing. Score 100.
Links are pulled from HTML anchors first, capturing both the href and the visible text. If the message contains no anchors, plain-text URLs are collected instead, so a text-only email is still analysed — though with no visible text to compare against, the mismatch check cannot fire.
The mismatch test is the sharpest signal available in an email, and it is stricter than a plain string comparison. If the visible text itself looks like a domain, that domain is compared with the real hostname, and a subdomain relationship counts as a match — text reading example.com pointing at mail.example.com is not flagged. Only a genuinely different destination is.
Lookalike detection computes edit distance between the link's registrable name and each brand in the impersonation list, flagging anything one or two edits away. Domains like paypa1.com, rnicrosoft.com, app1e.com, arnazon.com and netflx.com are caught by this rule. Longer decorations — micros0ft-billing.com, paypal-secure-team.com — sit too far away in edit distance and are caught, if at all, by the mismatch or impersonation rules instead.
It does not evaluate SPF, DKIM or DMARC. Authentication results are a separate discipline with their own failure modes, and they live in our email header analyzer. This tool looks at the body and at the header relationships that matter for phishing: who the reply goes to, who the bounce goes to, what the display name claims. Running both on a genuinely uncertain message is the complete answer; running only this one leaves the question of whether the sending server was authorised unanswered.
It does not fetch anything. No link is resolved, no shortener is expanded, no domain is aged or checked against a reputation feed. Every judgement is made from the text you pasted. That is what keeps the analysis private, and it means a brand-new attacker domain with a clean-looking name will not be flagged for being new, because nothing here can know that it is.
It does not detect certainty in either direction. This is the point to be blunt about. A score is a weighted sum of pattern matches, not a verdict from a system that understands the message.
reset your password and a path full of verify and account. Automated senders often have a Reply-To on a different domain than the From address for entirely mundane reasons. Read the individual findings, not just the number — each one shows the evidence that produced it.filename= parameter in the raw source and looks at the extension. It cannot inspect content, so a renamed executable, a double extension, or a malicious PDF will not be flagged by type alone.Below the findings there is an optional AI panel that turns the flag list into three to five plain sentences for a non-technical recipient — useful when you need to explain to the person who forwarded the message why it is a problem and what to do next. It runs a model in your browser, so the email still never leaves the machine, and it is explicitly downstream of the rules: it receives the findings that already fired and is instructed not to invent new ones. It cannot change the score. If it is unavailable or you skip it, the analysis is complete without it.
If the verdict is likely phishing: do not click, do not reply, and do not forward it as an attachment to colleagues who might click. Report it through whatever channel your organisation uses, and if anyone has already interacted with it, treat credential reset and session revocation as the first action rather than the last. If the message impersonated a real supplier or customer, tell them — their domain is being used and they will want to know.
If the verdict is suspicious, read the individual findings. Two medium flags on a newsletter is noise; a Reply-To mismatch plus a shortened link on a message about an invoice is a phone call to the sender on a number you already had.
If the verdict is probably safe and something still feels wrong, trust the feeling. The tool checked the things it knows how to check, and the list of things it cannot check — who really controls that domain, whether this request is plausible from this person, whether the account was taken over last week — is exactly the list a human is better at.
Phishing succeeds by looking legitimate while hiding a few tells. This analyzer checks the ones that matter most:
Link deception — the strongest signal. A link that says "paypal.com" but actually points to a different domain is almost always malicious. The tool compares the visible text against the real destination for every link, and also flags raw IP-address links, punycode domains (which hide lookalike characters), URL shorteners (which hide the destination entirely), and domains that are one or two characters off a known brand (typosquatting).
Sender inconsistencies — when Reply-To or Return-Path points to a different domain than the From address, your reply or the bounce goes somewhere other than the apparent sender. Combined with a display name that impersonates a brand (especially from a free mailbox like gmail.com), this is a classic spoofing setup.
Manufactured urgency — "act within 24 hours," "your account will be suspended," "unauthorized activity detected." Phishing pressures you to act before you think. The tool counts these phrases and weights them.
Credential requests — legitimate organizations never ask you to confirm your password, full card number, or SSN by email. Any email that does is a major red flag.
Dangerous attachments — executables and scripts (.exe, .scr, .js, .hta) and macro-enabled documents are primary malware vectors.
There is a chicken-and-egg problem with most phishing-analysis tools: to check whether an email is dangerous, you have to send the dangerous email somewhere. If that somewhere is a cloud service, you have just forwarded a potential threat — and possibly leaked whatever real information the email references about you.
Running the analysis in your browser removes that problem entirely. The email you paste is processed by JavaScript on your own machine and never transmitted. You can analyze the most sensitive, targeted phishing attempt — one that includes your real name, your company, your account details — without any of it leaving your device.
This local-first approach also means the tool works offline, has no rate limits, requires no signup, and cannot itself become a data-breach risk. The optional AI explanation runs the same way: a small model loaded into your browser, explaining the findings without ever seeing them on a server.
Yes — completely. The entire analysis runs in your browser using JavaScript. The email text is never sent to our servers or anyone else. You can verify this by opening the tool, disconnecting from the internet, and analyzing an email offline. This is exactly why a browser-based analyzer is the right tool for suspicious emails: a cloud service would require you to upload the very thing you are worried about.
It applies deterministic security rules to the email: it compares link text against the actual link destination (the single strongest phishing signal), detects raw-IP and punycode links, finds lookalike/typosquatted brand domains, checks whether Reply-To and Return-Path match the sender, spots display-name impersonation of known brands, scores urgency and credential-harvesting language, and flags dangerous attachment types. Each finding adds to a weighted risk score. The optional AI step only explains these findings — it never changes the verdict.
The Email Header Analyzer focuses on email authentication — SPF, DKIM, and DMARC — from the structured headers. The Phishing Email Analyzer takes the full email (headers and body) and analyzes the parts attackers actually use to deceive you: the links, the language, brand impersonation, and attachments. Use both together for a complete picture; this tool links to the header analyzer for the authentication side.
Do not click any links, open any attachments, or reply. If the email claims to be from a company you do business with, verify independently — type the company's real website address yourself or call a number from your account statement, never one from the email. Report the email to your IT/security team and to the impersonated company (most have a phishing@ address). Then delete it. A high score here is a strong signal, but when in doubt, treat it as malicious.
No automated tool can. This catches the common, high-confidence signals that most phishing shares — but sophisticated, targeted attacks (spear phishing) may use clean infrastructure and personalized language that no heuristic flags. A low score means "no obvious red flags," not "guaranteed safe." Always combine tool output with judgment: were you expecting this email? Does the request make sense? Is it creating pressure to act fast?
In most email clients, look for "Show original," "View source," or "View message details." In Gmail: open the email, click the three-dot menu, choose "Show original." In Outlook: open the message, File > Properties shows headers, or use "View source." That gives you the complete email including headers, which lets the analyzer check sender authentication clues. If you only have the visible body, the link and language analysis still works.
Analyze email headers for phishing, spoofing, and authentication failures. Trace email path and verify SPF, DKIM, DMARC.
Extract indicators of compromise (IOCs) like IPs, domains, URLs, hashes, and emails from text for threat intelligence
Detect and redact personal and sensitive data — emails, SSNs, credit cards, phone numbers, IPs, API keys — from any text or logs before sharing. Runs 100% in your browser; nothing is uploaded.
Defang and refang URLs, IPs, and domains for safe threat intelligence sharing. Convert URLs to prevent accidental clicks.