# Poll Graphic Maker

- Human page: https://happytails.ai/en/marketing-tools/poll-graphic-maker/
- Markdown: https://happytails.ai/en/marketing-tools/poll-graphic-maker.md
- Structured JSON: https://happytails.ai/agents/en/marketing-tools/poll-graphic-maker/index.json
- Visibility: public

## Tool capabilities

| Property | Value |
| --- | --- |
| Tool ID | `poll-graphic-maker` |
| Category | marketing-tools |
| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |
| Browser execution | Use the visible action or interactive controls. |
| Browser processing | Browser; see tool notes for network behavior. |
| HTTP API | Not callable through HTTP. |
| Browser-agent interface | run_current_tool |

### Implementation notes

The poll graphic, percentages and contrast check are computed on your device from at most 2000 characters.

### Inputs and settings

Text input: Question and options.

Example or placeholder shown in the interface (not a validated fixture):

```text
Which feature should we build next?
Dark mode | 128
Offline sync | 64
```

Put the question first, then one option per line. Add | and a vote count after an option to show percentages. The question cannot contain |. Up to 2,000 characters. Review the settings before running.

| Setting | Meaning | Control type | Default | Constraints |
| --- | --- | --- | --- | --- |
| `size` | Graphic size | select | "1080x1080" | Allowed: 1080x1080, 1080x1350, 1200x675, 1080x1920 |
| `decimals` | Percentage decimals | select | "0" | Allowed: 0, 1 |
| `showCounts` | Show vote counts | checkbox | true |  |
| `background` | Background | color | "#ffffff" |  |
| `textColor` | Text | color | "#1f2937" |  |
| `accent` | Bars | color | "#2563eb" |  |

### Browser-agent workflow

1. Open the human page in a browser that supports WebMCP.
2. Discover the interface exposed by that page; use its actual schema.
3. Select files on the page first when the tool requires files.
4. Call `run_current_tool` with valid input and settings.
5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.

Calls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.

### Planning specification

Up to 2000 characters, a question of up to 200 characters with no vertical bar (|), 2 to 6 options of up to 80 characters each and whole vote counts from 0 to 1000000000. Everything is computed on your device. Downloads are an SVG graphic, a CSV results table, a JSON report and an editable scene JSON file.

This describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.

### Complete machine-readable capability record

```json
{
  "id": "poll-graphic-maker",
  "category": "marketing-tools",
  "built": true,
  "requirements": "Up to 2000 characters, a question of up to 200 characters with no vertical bar (|), 2 to 6 options of up to 80 characters each and whole vote counts from 0 to 1000000000. Everything is computed on your device. Downloads are an SVG graphic, a CSV results table, a JSON report and an editable scene JSON file.",
  "implementation": {
    "fields": [
      {
        "key": "size",
        "label": "Graphic size",
        "value": "1080x1080",
        "type": "select",
        "values": [
          "1080x1080",
          "1080x1350",
          "1200x675",
          "1080x1920"
        ]
      },
      {
        "key": "decimals",
        "label": "Percentage decimals",
        "value": "0",
        "type": "select",
        "values": [
          "0",
          "1"
        ]
      },
      {
        "key": "showCounts",
        "label": "Show vote counts",
        "value": true,
        "type": "checkbox"
      },
      {
        "key": "background",
        "label": "Background",
        "value": "#ffffff",
        "type": "color"
      },
      {
        "key": "textColor",
        "label": "Text",
        "value": "#1f2937",
        "type": "color"
      },
      {
        "key": "accent",
        "label": "Bars",
        "value": "#2563eb",
        "type": "color"
      }
    ],
    "registrationFamily": "scene-composer-reference",
    "inputMaxLength": 2000,
    "inputErrorCode": "SCENE_COMPOSER_REFERENCE_POLL_TOO_LONG",
    "note": "The poll graphic, percentages and contrast check are computed on your device from at most 2000 characters.",
    "experience": {
      "automatic": false,
      "single": false,
      "inputMaxLength": 2000,
      "inputMode": "text",
      "label": "Question and options",
      "placeholder": "Which feature should we build next?\nDark mode | 128\nOffline sync | 64",
      "help": "Put the question first, then one option per line. Add | and a vote count after an option to show percentages. The question cannot contain |. Up to 2,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"
  }
}
```

## Page guide

Turn a question and two to six options into a clean poll graphic for social posts. Add vote counts to show percentages that always add up to 100.

How can we improve this tool?

Report a problem or share an idea.

Please leave out private information. Your message and the tool name go to our team via PostHog.

### How to use Poll Graphic Maker

1. Type the question on the first line, without a vertical bar.
2. Add each option on its own line, with an optional vote count after a vertical bar, such as Dark mode | 128.
3. Choose the graphic size, percentage decimals and colors.
4. Download the SVG graphic, the CSV results and the JSON report.

## Useful next steps

- [Open graph preview](https://happytails.ai/en/marketing-tools/open-graph-preview/) ([Markdown](https://happytails.ai/en/marketing-tools/open-graph-preview.md))

- [QR code generator](https://happytails.ai/en/marketing-tools/qr-code-generator/) ([Markdown](https://happytails.ai/en/marketing-tools/qr-code-generator.md))

- [Palette visualizer](https://happytails.ai/en/design-tools/palette-visualizer/) ([Markdown](https://happytails.ai/en/design-tools/palette-visualizer.md))

## How percentages are calculated

Percentages come only from the vote counts you enter. Each share is computed with whole-number arithmetic and rounded with the largest remainder method (also called the Hamilton method), so the displayed values always add up to exactly 100. When two options have the same remainder, the earlier option gets the extra point. Without vote counts the graphic shows the options as an open poll with no percentages.

### Contrast check

The report compares your text color and bar color with the background using the contrast ratio formula from the W3C Web Content Accessibility Guidelines (WCAG) 2.2, published 5 October 2023. Text passes at 4.5 to 1 and bars pass the non-text threshold at 3 to 1. The ratio is cut, not rounded, to two decimals so a near miss is never shown as a pass.

### Limits of the layout

Text widths are estimated from standard Helvetica character widths, so line breaks can differ slightly if the viewer substitutes another font. The report lists any text that needs more lines than its space allows. Image options and PNG export are not part of this version.
