GratisAI civic · count feedback themes once per response, with the denominator visible · local-first FREE TIER 1 Free Run Available
response-incidence chart · plotted bar chart sheet

Count Feedback Themes Once Per Response, With the Denominator Visible

A response mentioning a theme three times is still one response mentioning that theme. Enter anonymous codes and human-assigned themes to count incidence once, disclose unentered records and keep overlapping themes out of a misleading hundred-percent pie.

1 · anonymous response code | theme codes separated by commas, or - | channel label

FIRST-LOAD

HYPOTHESIS / PROTOTYPE — checkout unavailable. Calculation is local. A draft is saved automatically in this browser profile when storage is available; Reset to sample clears it. Optional Pro history stores only five summaries and has its own deletion control. State links encode your inputs and can remain in browser history, clipboard or recipients’ records; share only non-sensitive rows. Optional external AI formatting leaves this device. The required site analytics beacon reports page activity; shared URLs contain encoded inputs. Do not treat an encoded URL as private. The calculator has no input-collection endpoint.

Data note: The response-incidence chart processes anonymous response code | theme codes separated by commas, or - | channel label locally. Starter/sample selection and Run compute in this tab; no input is sent by the calculator. A local draft may be saved; explicit state-link sharing or optional external AI formatting can disclose inputs. Use non-sensitive labels.

Perspective: Before: repeated theme codes could look like additional respondents. After: deduplicated response/theme pairs and missing received records remain separate from votes or consensus.

2 · Read the response-incidence chart

Anonymous coding-count arithmetic only, not political profiling, public-opinion inference, legal consultation compliance or a representative survey analysis. No raw comments or personal identifiers are needed. Have the consultation coordinator or a qualified analyst review the coding guide, missing records and reporting language before publishing; do not treat incomplete incidence counts as votes or consensus.

Optional filing controls are a local prototype.

Checkout is unavailable. The reading above is complete; print, CSV and five local summaries are optional enhancements, not hidden answers.

Before using the response-incidence chart

Create a small coding guide before tallying comments. For a library service review, codes might distinguish hours, seating and signage without labeling a resident’s identity, politics or motivation. Apply the guide consistently and retain the original feedback in whatever lawful, approved system already holds it—not in this tool. The row accepts only an anonymous response code, theme codes and a broad channel label. One response can legitimately carry several themes, so incidence totals can exceed the response count. That is not an error when the denominator is stated. It would be an error to describe theme incidences as mutually exclusive votes or as a representative population survey. The local tally preserves human judgment and makes the count audit simple; it does not replace research design or consultation governance.

Boundary and sources

Anonymous coding-count arithmetic only, not political profiling, public-opinion inference, legal consultation compliance or a representative survey analysis. No raw comments or personal identifiers are needed. Have the consultation coordinator or a qualified analyst review the coding guide, missing records and reporting language before publishing; do not treat incomplete incidence counts as votes or consensus.

Mechanism: competence-autonomy-loop

Optional AI formatting, never the calculation

Manual entry completes this response-incidence chart for free without signup. If available to you, the free AI Studio interface linked in the sources may format fictional or non-sensitive notes; external access may require an account. No API key or AI call is built into this tool. Free-tier content may be used to improve products. Review each cell and transcribe it to the labeled row schema; do not paste the JSON object into the row box.

Format only these fictional or non-sensitive notes for a response-incidence chart. Return strict JSON shaped as {"rows": [{"label": "string", "cells": ["string", "string"]}], "setting": "string"}. The columns are anonymous response code | theme codes separated by commas, or - | channel label; the setting is Total responses received, including uncoded responses. Keep all supplied strings and quantities exactly; do not calculate, infer missing entries, invent dates or add advice. If any required value is missing, return an empty rows array and ask me for it separately. I will verify every cell against my source and manually transcribe rows using vertical bars before running the local calculator.

An AI response is not executed, fetched or trusted as a result. Missing values remain questions; the strict local parser checks the rows you actually enter.