{
  "title": "Customer satisfaction calculator",
  "human_url": "https://happytails.ai/en/calculators/customer-satisfaction-calculator/",
  "agent_url": "https://happytails.ai/agents/en/calculators/customer-satisfaction-calculator/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/calculators/customer-satisfaction-calculator.md",
  "content": "Customer satisfaction calculator\nCalculate customer satisfaction from survey scores or counts. Set your rating scale and satisfied-score threshold, then see the distribution and average.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Customer satisfaction calculator\nPaste the ratings or choose a score,count CSV distribution.\nSet the lowest and highest scores and which scores count as satisfied.\nCalculate the satisfied percentage, average and complete rating distribution. Download the result.\nUseful next steps\nNet Promoter Score calculator\nAverage\nChoose what counts as satisfied\nA common five-point satisfaction survey counts ratings of 4 and 5 as satisfied. That is the default here. Different questions and scales need an explicit threshold; reverse-coded questions can count scores at or below the threshold instead.\nKeep the average separate\nThe satisfaction percentage counts responses that meet your threshold. The average uses every rating on your selected scale. For ratings 1, 2, 3, 4 and 5, the average is 3, while the default satisfaction percentage is 40%.\nKeep the full distribution\nThe same average can come from very different groups of responses. Review each score count and its share before comparing teams or periods. The calculator does not assign a benchmark or infer statistical significance.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Net Promoter Score calculator",
      "url": "https://happytails.ai/en/calculators/net-promoter-score-calculator/"
    },
    {
      "name": "Average",
      "url": "https://happytails.ai/en/calculators/average/"
    }
  ],
  "tool": {
    "id": "customer-satisfaction-calculator",
    "category": "calculators",
    "built": true,
    "requirements": "Use a whole-number scale within 0 to 10, with at least two possible scores. Paste up to 100,000 individual scores or a CSV with score,count headers and one row per score. Counts must be nonnegative integers, with no more than 1,000,000,000 responses in total and 1,000,000 input characters. A percentage describes the supplied responses; it is not a population estimate or a statistical-significance test. Processing stays on your device.",
    "implementation": {
      "fields": [
        {
          "key": "format",
          "label": "Input format",
          "value": "responses",
          "type": "select",
          "values": [
            "responses",
            "counts"
          ],
          "labels": {
            "responses": "Individual responses",
            "counts": "Score counts (CSV)"
          }
        },
        {
          "key": "minimum",
          "label": "Lowest score",
          "value": 1,
          "type": "number",
          "min": 0,
          "max": 10,
          "step": 1
        },
        {
          "key": "maximum",
          "label": "Highest score",
          "value": 5,
          "type": "number",
          "min": 0,
          "max": 10,
          "step": 1
        },
        {
          "key": "threshold",
          "label": "Satisfied-score threshold",
          "value": 4,
          "type": "number",
          "min": 0,
          "max": 10,
          "step": 1
        },
        {
          "key": "direction",
          "label": "Satisfied scores",
          "value": "higher",
          "type": "select",
          "values": [
            "higher",
            "lower"
          ],
          "labels": {
            "higher": "At or above threshold",
            "lower": "At or below threshold"
          }
        }
      ],
      "presentation": "metrics",
      "inputMaxLength": 1000000,
      "inputErrorCode": "SURVEY_LIMIT",
      "note": "Choose a whole-number scale within 0 to 10 and which scores count as satisfied. The default is 1 to 5, with 4 and 5 satisfied. The satisfaction percentage and average use all supplied responses. Results depend on your question, scale and threshold; no benchmark or statistical significance is inferred. Processing stays on your device.",
      "experience": {
        "automatic": false,
        "single": false,
        "inputMaxLength": 1000000,
        "inputMode": "text",
        "label": "Survey scores or score counts",
        "placeholder": "1 2 3 4 5",
        "help": "Enter whole-number scores. For counted data choose Score counts (CSV) and use the score,count headers. Up to 1,000,000 characters. Review the settings before running.",
        "action": null
      },
      "mode": "explicit",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Customer satisfaction calculator\n\n- Human page: https://happytails.ai/en/calculators/customer-satisfaction-calculator/\n- Markdown: https://happytails.ai/en/calculators/customer-satisfaction-calculator.md\n- Structured JSON: https://happytails.ai/agents/en/calculators/customer-satisfaction-calculator/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `customer-satisfaction-calculator` |\n| Category | calculators |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Use the visible action or interactive controls. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nChoose a whole-number scale within 0 to 10 and which scores count as satisfied. The default is 1 to 5, with 4 and 5 satisfied. The satisfaction percentage and average use all supplied responses. Results depend on your question, scale and threshold; no benchmark or statistical significance is inferred. Processing stays on your device.\n\n### Inputs and settings\n\nText input: Survey scores or score counts.\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\n1 2 3 4 5\n```\n\nEnter whole-number scores. For counted data choose Score counts (CSV) and use the score,count headers. Up to 1,000,000 characters. Review the settings before running.\n\n| Setting | Meaning | Control type | Default | Constraints |\n| --- | --- | --- | --- | --- |\n| `format` | Input format | select | \"responses\" | Allowed: responses, counts |\n| `minimum` | Lowest score | number | 1 | min=0 max=10 step=1 |\n| `maximum` | Highest score | number | 5 | min=0 max=10 step=1 |\n| `threshold` | Satisfied-score threshold | number | 4 | min=0 max=10 step=1 |\n| `direction` | Satisfied scores | select | \"higher\" | Allowed: higher, lower |\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nUse a whole-number scale within 0 to 10, with at least two possible scores. Paste up to 100,000 individual scores or a CSV with score,count headers and one row per score. Counts must be nonnegative integers, with no more than 1,000,000,000 responses in total and 1,000,000 input characters. A percentage describes the supplied responses; it is not a population estimate or a statistical-significance test. Processing stays on your device.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"customer-satisfaction-calculator\",\n  \"category\": \"calculators\",\n  \"built\": true,\n  \"requirements\": \"Use a whole-number scale within 0 to 10, with at least two possible scores. Paste up to 100,000 individual scores or a CSV with score,count headers and one row per score. Counts must be nonnegative integers, with no more than 1,000,000,000 responses in total and 1,000,000 input characters. A percentage describes the supplied responses; it is not a population estimate or a statistical-significance test. Processing stays on your device.\",\n  \"implementation\": {\n    \"fields\": [\n      {\n        \"key\": \"format\",\n        \"label\": \"Input format\",\n        \"value\": \"responses\",\n        \"type\": \"select\",\n        \"values\": [\n          \"responses\",\n          \"counts\"\n        ],\n        \"labels\": {\n          \"responses\": \"Individual responses\",\n          \"counts\": \"Score counts (CSV)\"\n        }\n      },\n      {\n        \"key\": \"minimum\",\n        \"label\": \"Lowest score\",\n        \"value\": 1,\n        \"type\": \"number\",\n        \"min\": 0,\n        \"max\": 10,\n        \"step\": 1\n      },\n      {\n        \"key\": \"maximum\",\n        \"label\": \"Highest score\",\n        \"value\": 5,\n        \"type\": \"number\",\n        \"min\": 0,\n        \"max\": 10,\n        \"step\": 1\n      },\n      {\n        \"key\": \"threshold\",\n        \"label\": \"Satisfied-score threshold\",\n        \"value\": 4,\n        \"type\": \"number\",\n        \"min\": 0,\n        \"max\": 10,\n        \"step\": 1\n      },\n      {\n        \"key\": \"direction\",\n        \"label\": \"Satisfied scores\",\n        \"value\": \"higher\",\n        \"type\": \"select\",\n        \"values\": [\n          \"higher\",\n          \"lower\"\n        ],\n        \"labels\": {\n          \"higher\": \"At or above threshold\",\n          \"lower\": \"At or below threshold\"\n        }\n      }\n    ],\n    \"presentation\": \"metrics\",\n    \"inputMaxLength\": 1000000,\n    \"inputErrorCode\": \"SURVEY_LIMIT\",\n    \"note\": \"Choose a whole-number scale within 0 to 10 and which scores count as satisfied. The default is 1 to 5, with 4 and 5 satisfied. The satisfaction percentage and average use all supplied responses. Results depend on your question, scale and threshold; no benchmark or statistical significance is inferred. Processing stays on your device.\",\n    \"experience\": {\n      \"automatic\": false,\n      \"single\": false,\n      \"inputMaxLength\": 1000000,\n      \"inputMode\": \"text\",\n      \"label\": \"Survey scores or score counts\",\n      \"placeholder\": \"1 2 3 4 5\",\n      \"help\": \"Enter whole-number scores. For counted data choose Score counts (CSV) and use the score,count headers. Up to 1,000,000 characters. Review the settings before running.\",\n      \"action\": null\n    },\n    \"mode\": \"explicit\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nCalculate customer satisfaction from survey scores or counts. Set your rating scale and satisfied-score threshold, then see the distribution and average.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Customer satisfaction calculator\n\n1. Paste the ratings or choose a score,count CSV distribution.\n2. Set the lowest and highest scores and which scores count as satisfied.\n3. Calculate the satisfied percentage, average and complete rating distribution. Download the result.\n\n## Useful next steps\n\n- [Net Promoter Score calculator](https://happytails.ai/en/calculators/net-promoter-score-calculator/) ([Markdown](https://happytails.ai/en/calculators/net-promoter-score-calculator.md))\n\n- [Average](https://happytails.ai/en/calculators/average/) ([Markdown](https://happytails.ai/en/calculators/average.md))\n\n## Choose what counts as satisfied\n\nA common five-point satisfaction survey counts ratings of 4 and 5 as satisfied. That is the default here. Different questions and scales need an explicit threshold; reverse-coded questions can count scores at or below the threshold instead.\n\n### Keep the average separate\n\nThe satisfaction percentage counts responses that meet your threshold. The average uses every rating on your selected scale. For ratings 1, 2, 3, 4 and 5, the average is 3, while the default satisfaction percentage is 40%.\n\n### Keep the full distribution\n\nThe same average can come from very different groups of responses. Review each score count and its share before comparing teams or periods. The calculator does not assign a benchmark or infer statistical significance.\n"
}