1 = last 7 days.-1001234567890.Tap the on any group to import its past 7 or 30 days of messages.
Tap any section to expand it.
TG Monitor listens to your designated Telegram groups as a regular member — no admin access required. It records who posts, how often, and when, then gives you this dashboard to act on that intelligence.
What you can do
- See who is active (or inactive) across all monitored groups
- Automatically forward specific messages to a private channel
- Send targeted direct messages to active or lapsed members
- Track reply rates for every DM campaign
Access & security
Only the account registered as the admin can open this dashboard. Every API request is validated server-side — your session expires automatically after 24 hours.
KPI Cards
- Total Users — every unique person ever seen across all groups, including those who have since left.
- Active Members — users who are currently a member of at least one group.
- Msgs (week) — message count in the current ISO week (Mon–Sun). The ↑/↓ arrow compares to last week.
- DMs Sent — total direct messages delivered across all campaigns. The percentage is the overall reply rate.
Activity Chart
Shows daily message volume for the last 14 days. A flat or rising line means healthy engagement. A sudden drop may indicate a group going quiet or a monitoring interruption.
Top Users This Week
The 4 most active posters in the current week. The horizontal bar shows each user's share of the most-active user's count — useful for spotting who drives conversation.
/aggregate to the dashboard bot, then reload the overview.A live, paginated directory of every Telegram user the system has observed, sorted by most-recently-seen first.
Searching
Type in the search box to filter by username or first name. Results update automatically as you type (300 ms debounce).
Reading the list
- The blue badge shows the last time the user sent a message in any monitored group — e.g., "3h ago" or "12d ago".
- Users remain visible even after leaving a group. "Last seen" reflects the most recent message observed, not Telegram's own online indicator.
- The pagination line below the list shows your current page and the total user count.
Automatically copies matching messages from monitored groups to a channel or chat of your choice. Each group can forward to a different destination.
Controls (per group)
- Enable forwarder — on/off switch for this group.
- Forward all — sends every message without keyword filtering. Use with caution on high-volume groups.
- Target channel ID — the chat or channel to forward into. Forward any message from the target to @userinfobot to find its ID (a large negative number like
-1001234567890). - Keywords — only forward messages containing at least one listed word. Case-insensitive. Up to 20 keywords, 50 chars each.
Adding & removing keywords
Type a word in the input field and tap Add or press Enter. Tap the × on any tag to delete it.
Send a direct message to a filtered subset of users observed in your monitored groups.
Step-by-step
- 1. Campaign name — a unique label (letters, numbers, dashes, underscores only, max 64 chars). The same user will never receive the same campaign name twice, protecting against accidental re-sends.
- 2. Target — Active users: people who posted ≥ X messages in the look-back window. Inactive users: members who have not posted recently.
- 3. Min messages — (active targeting only) exclude users below this threshold. Higher values reach only your most engaged members.
- 4. Message — the DM text sent to each recipient. Max 4,096 characters.
- 5. Preview targets — run this first. It calculates the recipient list without sending anything. Verify the count looks right.
- 6. Send Campaign — confirms and queues the job. The server processes it in the background at the rate limits below.
Rate limits
- Max 15 DMs per hour
- 30–90 second random delay between each message
- 100 recipients ≈ ~90 minutes total
- Telegram flood-wait errors are handled automatically — the system pauses and resumes
/aggregate to the dashboard bot, wait a moment, then preview again.All KPIs show "—" or the page is blank
Your session may have expired or the server is unreachable. Close and reopen the app. If the issue persists, ask your operator to check the server status.
Campaign preview returns 0 users
Activity data is aggregated weekly. Send /aggregate to the dashboard bot, wait 30 seconds, then preview again.
Can I send the same campaign to the same people again?
Not with the same campaign name — the system deduplicates by user+campaign pair. Use a new name (e.g., june_promo_v2) to re-contact them.
What if a user has blocked the account?
The system logs it as "blocked" and continues to the next recipient. Blocked users do not count against the hourly limit.
Is "last seen" the same as Telegram's online status?
No. "Last seen" here is the timestamp of the user's most recent message observed in a monitored group — not their Telegram online/offline indicator.
The forwarder isn't forwarding anything
Check that: (1) Enable forwarder is on for the group, (2) you have entered a valid Target channel ID, (3) you have tapped Save, and (4) the monitoring account is a member of the target channel.
Who can access this dashboard?
Only the Telegram account whose ID matches ADMIN_CHAT_ID on the server. Every request is verified server-side — other users are rejected even if they have the app link.