More in Website analytics
- Bots and AI crawlers
- Traffic sources, UTM and ad click IDs
- Are bots and AI crawlers counted in my visitors?
- How does TapCub detect bots?
- How do I read the AI crawler ledger?
- A real visitor is marked as a bot — how do I fix it?
- How does TapCub decide a visit’s channel?
- How should I name my UTM parameters?
- Does TapCub track ad click IDs like gclid?
- Why do my organic search terms look empty?
- How do I get alerted when traffic drops or spikes?
- How do I schedule email reports?
- How do I share a dashboard or report?
- How do I check Core Web Vitals for real visitors?
- How do I find JavaScript errors on my site?
- How do I see website visitors in real time?
- How do I compare date ranges?
- How do I import server logs?
- How do I check crawl health and crawler errors?
- How do I find the pages where visitors leave my website?
- All guides in this category
Still have a question?
Could not find it? A person reads every message, usually within a few hours on business days.
Chat with usShort answer
Click Annotate on the Web analytics overview chart and drag across the dates, or add one under Configuration → Annotations. You can import up to 500 from a CSV. Analysts and above can create them; everyone on the project sees them.
Add one from a chart
- Open Web analyticsOverview (or the app or mini program overview).
- Click Annotate, drag across the date range on the chart and release. For a single day, click one day.
- Fill in the type, title and scope, then save.
A single-day annotation draws a dashed line with a short label; a date range draws a light band. Hover over it to see the title, type and author.
Add one from settings
Open ConfigurationAnnotations and click New. The fields are:
| Field | Notes |
|---|---|
| Date | Start date required; leave the end date empty for one day |
| Type | Campaign, Release, Ads change, Incident, Holiday, Other (sets the color) |
| Title | Required, up to 40 characters |
| Note | Optional, up to 500 characters |
| Scope | All, Web, App, Mini program |
Import many at once
Upload a CSV with the columns \date_from,date_to,type,title,note,scope\:
\\\csv date_from,date_to,type,title,note,scope 2026-11-01,2026-11-11,campaign,Autumn sale,Homepage banner + email,all 2026-11-20,,release,v2.3.0 release,,web \\\
\type\ is one of campaign, release, ads, incident, holiday, other; \scope\ is all, web, app or mp. Up to 500 rows per import. Rows with errors are listed by line number and the rest are imported.
Imports are not deduplicated. Importing the same file twice creates two copies.
Where annotations appear
Web analytics overview and data report show scope All and Web; app and mini program overviews show All plus their platform; dashboard trend cards show every scope. Show / Hide annotations in the chart legend only affects your browser.
App and mini program versions are added automatically as Release annotations the first day each version appears. Public holidays can also be shown (currently Chinese public holidays for 2026).
Who can add them
Every project member can see annotations. Creating, editing, deleting and importing need the analyst role or higher. When a number jumps, an annotation is the first thing to check; for other reasons numbers move, see why visitor numbers differ.
See also: traffic alerts and what to check after a sudden traffic drop.
See also
Did this answer your question?
We use your answers to fix and expand this page.
Couldn’t send. Please try again in a minute.
Thanks for the feedback. We’ll use it to improve this page.You’ve already sent feedback on this page. Thanks.