Measure how often target words or phrases appear in pasted copy: match counts and density % versus total word tokens. Tokenization is Unicode-aware and case-insensitive; single terms use whole-word matching, and multi-word entries use phrase matches on the token stream. All analysis runs in your browser — no upload of your text or keyword list to DroidXP, consistent with APK Analyzer and APK String Extractor. Export a quick TSV for spreadsheets.
Multi-word lines are treated as phrases (token-aligned, non-overlapping). Related: Word Frequency Counter, Meta Tag Generator, Title & Meta Length Checker.
| Keyword / phrase | Type | Matches | Density |
|---|
Keyword density is a simple ratio: how often chosen terms appear compared to the full word count. It can help editors spot repetition, compare drafts, or prepare reports — but it is not a shortcut to rankings. Modern search engines use semantic relevance; over-optimizing exact-match repetition can read as spam. This page mirrors the privacy posture of APK String Extractor: your paste never leaves the browser for analysis.
Text is split into tokens using Unicode letter, number, mark, and apostrophe rules (same family as our Word Frequency Counter). Each keyword line is classified as a single word (one token after tokenization) or a phrase (multiple tokens). Phrases are found as non-overlapping runs in the lowercased token sequence, so punctuation between words in the source does not break a phrase match as long as the underlying tokens line up.
Density % = (occurrences ÷ total word tokens) × 100. Each phrase occurrence counts once. If you need total vocabulary or frequency tables without a keyword list, use Word Frequency Counter; for crawl/indexing artifacts, pair SEO work with Sitemap Generator and Robots.txt Generator.
Inputs may be cached in localStorage on your device so the page remembers your last session. That data is not transmitted to DroidXP when you type. Clear the form (or your site data) to remove it — similar to optional persistence on other client-side tools like
APK Analyzer.
No. Everything you paste is processed in your browser with JavaScript — the same local-only stance as APK Analyzer and APK String Extractor. Only normal static assets (HTML/CSS/JS) load from DroidXP.
No. Modern search is semantic; repetition metrics are at best a rough editorial signal. Use this tool for consistency checks, spot over-repetition, or client reporting — not as a ranking formula.
Single-token keywords use whole-token equality after the same Unicode-aware tokenization as the body (letters, numbers, marks, apostrophes inside words). “cat” does not count inside “category”.
Matching is case-insensitive. There is no stemming and no stop-word removal here — “running” and “run” are different tokens. For general word-frequency stats (including optional stop-word filtering), use Word Frequency Counter on DroidXP.
Phrases are tokenized the same way, lowercased, joined with spaces, then counted as non-overlapping occurrences in the token stream. Extra punctuation between words is ignored because matching runs on normalized tokens.
Density is (occurrences ÷ total word tokens in the paste) × 100. One phrase match counts as one occurrence. If the document has zero tokens, density is shown as em dash (—).
Tokenization uses Unicode letter/number categories, so many scripts tokenize sensibly. It does not apply language-specific dictionaries or segmentation rules (e.g. CJK may group characters differently than a specialized segmenter).
Yes — your content stays in the tab; optional localStorage only remembers your last inputs for convenience. Nothing is sent to DroidXP servers for analysis.
There is no reliable universal target; “2–3%” style rules are outdated. Prefer natural language, clear headings, and topic coverage. Use this tool mainly to catch accidental stuffing or uneven repetition.
For responsiveness the tool ignores input beyond about 500,000 characters. Huge pages may still make the tab slow — trim excerpts or split the job.