{
  "id": "characters-to-words",
  "version": "996d8b359e7c",
  "status": "published",
  "name": "Characters to Words",
  "question": "How many words are my characters?",
  "summary": "A word calculator that turns a character count into an estimated number of words, or words into characters, by the 5-character typing word or the 4.79-letter average English word.",
  "category": "everyday-life",
  "subcategory": "fun",
  "url": "https://www.acalculator.org/everyday-life/characters-to-words",
  "markdown": "https://www.acalculator.org/everyday-life/characters-to-words.md",
  "kind": "function",
  "method": "Words = characters ÷ characters per word; characters = words × characters per word.",
  "assumptions": [
    "The typing standard counts 5 characters a word, spaces and punctuation included.",
    "The average English word has 4.79 letters; with the space after each word, 5.79 characters.",
    "The result is an estimate for ordinary English prose; the answer rounds to a whole number, halves up."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "from": {
        "title": "I know",
        "description": "Whether you know the number of characters or the number of words.",
        "type": "string",
        "enum": [
          "chars",
          "words"
        ]
      },
      "c": {
        "title": "Characters",
        "description": "The character count, as a word processor or a site’s limit counts it.",
        "type": "integer",
        "minimum": 0,
        "maximum": 1000000000000
      },
      "w": {
        "title": "Words",
        "description": "The number of words.",
        "type": "number",
        "minimum": 0,
        "maximum": 1000000000000
      },
      "rule": {
        "title": "A word is",
        "description": "The typing standard of 5 characters a word, or the average English word of 4.79 letters.",
        "type": "string",
        "enum": [
          "typing",
          "average"
        ]
      },
      "sp": {
        "title": "The count includes",
        "description": "Whether the character count includes spaces, which adds one character to each word.",
        "type": "string",
        "enum": [
          "with",
          "without"
        ]
      }
    }
  },
  "outputs": {
    "result": {
      "label": "Answer",
      "description": "The estimate as a whole number: about N words, or about N characters.",
      "format": "text"
    },
    "wordCount": {
      "label": "Words",
      "description": "Characters ÷ characters per word, unrounded.",
      "format": "number"
    },
    "characterCount": {
      "label": "Characters",
      "description": "Words × characters per word, unrounded.",
      "format": "number"
    },
    "perWord": {
      "label": "Characters per word",
      "description": "5 for the typing standard; 5.79 with spaces or 4.79 without for the average English word.",
      "format": "number"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "from": "chars",
      "c": 1000,
      "w": 250,
      "rule": "typing",
      "sp": "with"
    },
    "outputs": {
      "result": "About 200 words",
      "wordCount": 200,
      "characterCount": 1000,
      "perWord": 5
    },
    "text": "At 5 characters a word: About 200 words."
  },
  "examples": [
    {
      "given": {
        "from": "chars",
        "c": 1000,
        "rule": "typing"
      },
      "expect": {
        "result": "About 200 words",
        "wordCount": 200
      },
      "source": "Words per minute, Wikipedia (a word is standardized to 5 characters or keystrokes, including spaces and punctuation; citing Arif and Stuerzlinger, 2009, Analysis of Text Entry Performance Metrics), https://en.wikipedia.org/wiki/Words_per_minute (retrieved 2026-10-02); hand calculation in content.mdx: 1,000 ÷ 5 = 200 words"
    },
    {
      "given": {
        "from": "chars",
        "c": 1000,
        "rule": "average",
        "sp": "with"
      },
      "expect": {
        "result": "About 173 words",
        "wordCount": 172.71157167530225
      },
      "source": "Peter Norvig, English Letter Frequency Counts: Mayzner Revisited (the average English word is 4.79 letters, over 743 billion words of Google Books), https://norvig.com/mayzner.html (retrieved 2026-10-02); hand calculation in content.mdx: 1,000 ÷ 5.79 = 172.71 words"
    },
    {
      "given": {
        "from": "chars",
        "c": 2400,
        "rule": "average",
        "sp": "without"
      },
      "expect": {
        "result": "About 501 words",
        "wordCount": 501.0438413361169
      },
      "source": "Peter Norvig, English Letter Frequency Counts: Mayzner Revisited (the average English word is 4.79 letters, over 743 billion words of Google Books), https://norvig.com/mayzner.html (retrieved 2026-10-02); hand calculation in content.mdx: 2,400 ÷ 4.79 = 501.04 words"
    },
    {
      "given": {
        "from": "words",
        "w": 250,
        "rule": "average",
        "sp": "with"
      },
      "expect": {
        "result": "About 1,448 characters",
        "characterCount": 1447.5
      },
      "source": "Peter Norvig, English Letter Frequency Counts: Mayzner Revisited (the average English word is 4.79 letters, over 743 billion words of Google Books), https://norvig.com/mayzner.html (retrieved 2026-10-02); hand calculation in content.mdx: 250 × 5.79 = 1,447.5, which rounds up to 1,448 characters"
    }
  ],
  "sources": [
    "Words per minute, Wikipedia (a word is standardized to 5 characters or keystrokes, including spaces and punctuation; citing Arif and Stuerzlinger, 2009, Analysis of Text Entry Performance Metrics, IEEE TIC-STH). https://en.wikipedia.org/wiki/Words_per_minute (retrieved 2026-10-02)",
    "Peter Norvig, English Letter Frequency Counts: Mayzner Revisited or ETAOIN SRHLDCU (the average is 4.79 letters per word, over 743,842,922,321 word mentions in the Google Books Ngrams English 1-grams, version 20120701). https://norvig.com/mayzner.html (retrieved 2026-10-02)"
  ],
  "related": [
    "wpm",
    "speaking-time",
    "audiobook-length"
  ],
  "changelog": []
}
