First CHAppsWeb apps

First CH Apps / LINE Attendance Tally

Paste LINE replies, get the attendance countSee who hasn’t replied

When attendance replies came in as free text instead of a LINE poll, paste the exported chat history to count going / not going / not sure and head counts (○2), and match it against your member list to see who has not replied.

How it differs from LINE polls and events

  • Counts replies that already came in as text (no need to re-create a poll or ask people to answer again)
  • Matches against your member list and names who has not replied
  • Adds up head counts like “○2” and exports CSV for fees or lists

1Write the call for replies

Press Open to write a call that fixes the reply format for your next event.

The message on the right updates as you type. Copy it and post it in your LINE group.

Everyone in the group sees it, so the next organizer can use the same format. Untick to leave it out.

Message to post in LINE


      

2Count the replies

Export the LINE chat history and paste it as is (3 steps on a phone). How to export (LINE Help)

  1. ≡ menu, top right of the chatOpen the group chat you want to count and tap ≡ at the top right.
  2. Settings → Export chat historyOpen Settings in the menu and tap Export chat history.
  3. Copy from the share sheet and pastePick Notes or an e-mail to yourself, select all of the opened text, copy it and paste it below.

Messages copied by long-pressing in the chat lack the date lines and the time / name separators, so they cannot be counted. After you paste, what is missing is shown below the box.

What will be countedPaste the chat history to see which call message (event, date, reply-by) is used.

If the chat has several 【出欠確認】 messages, the one with this event name is used.

Add a member list to see who has not replied (optional)

Used to show who has not replied. The list never leaves your device either.

The chat history is counted on this device only (nothing is sent except rows you allow with the AI option).

How to use it

When you take attendance in LINE, everyone replies in their own way and counting takes time. This page counts the text replies just by pasting the chat back. Fix the reply format on one line in your next call and there will be fewer rows to check.

  1. When replies are in, open the chat’s ≡ menu → Settings → Export chat history and paste the text into step 2. Check the event and reply-by date shown, and press Make the list.
  2. Press Check rows to check under the totals to see only the rows to fix. Use Use suggestion on rows that show one, or pick the category and count. Then use Copy name-free summary to post the result back to the group.
  3. For the next event, write a call in step 1 that fixes the reply format on one line and post it in LINE; fewer rows will need checking.

Counting rules

  • ○, ◯, 〇 (and a leading O) count as going, ×, ✕ (and a leading X) as not going, △ as not sure.
  • The number right after ○ is the head count (○3 incl. 2 kids → 3). A “going” reply without a number stays blank and is left out of the total.
  • If someone replies more than once, the later reply wins (○2 then × → not going).
  • Messages before the call (the message with 【出欠確認】) and from the day after the reply-by date are not counted. Late replies stay in the list; tick them to count them.
  • “Me too”, “absent for the previous one”, replies with both ○ and ×, word-only replies like 参加します and replies on someone else’s behalf go to To check. Word replies get a suggestion.
  • Each row’s Use suggestion applies its suggestion. Apply suggestions only changes rows such as word-only replies in bulk. Replies that may be about another event (like “absent for the previous one”) and replies on someone’s behalf are never changed in bulk and stay in To check until you confirm each row, so they never slip into this event’s numbers.

FAQ

Is my chat history sent anywhere?

No. Reading and counting happen on the device you opened this page on. Something is sent only when you turn on the AI option, review what will be sent and allow it.

How is this different from LINE polls and events?

If you use a poll or event from the start, it counts for you. This page is for when replies came in as text instead: paste the chat history back to count them, see who has not replied against your list, add up head counts like “○2” and export CSV.

My export cannot be read.

Only the text from LINE’s Export chat history (date lines and “time, name, message” lines) is supported. Messages copied by long-pressing in the chat lack the dates and separators. After you paste, what is missing (date lines, time / name separators) is shown below the box.

Can I count several events at once?

One event per tally. If there are several 【出欠確認】 messages, the one matching the event name in step 1 (or the first one) is used.

What is sent, what is stored, and when it is deleted

Writing the call, reading the chat history, classifying, counting and creating the summary, reminder and CSV all happen on this device. The chat history, member list and event details are never sent to the server.

The only thing sent is, when you turn on Use the AI option and allow it after reviewing, the text of the To check rows you picked and the message before each (with speakers’ and listed names, phone numbers, e-mail addresses, @mentions and names before さん etc. masked; the server masks phone numbers, e-mail addresses, @mentions and names before さん etc. again. Names not on your list may remain, so you can review exactly what will be sent first). Our server (Cloudflare Pages Functions) passes it to Cloudflare Workers AI and returns the result.

First CH does not store the text or the result (nothing is written to a database or log, and it is gone when the request ends). Cloudflare handles it under its official policy.

The database only records the date and the number of AI uses that day (the total across all users and the count for this tool). To prevent rapid repeats, requests per IP are counted in server memory only, never stored, and cleared within 10 minutes.

Sources (checked on 4 November 2026)

Use it from an AI agent or program

POST /en/henji-kuru/api/read with JSON ({"lines": [{"text": "私も", "context": "○2"}], "count": true}) returns each row's category (yes / no / maybe / unclear), head count and reason as JSON (lines: 1–10; text and context up to 300 characters each; count: true if the call asked for numbers. No auth, nothing stored; the daily and per-IP limits are shared with the page). Tallying a whole chat runs on your device, so there is no API for it.