How we count.
Every number Nodium shows comes from one of these definitions. Nothing is counted twice, and when in doubt we count less.
Nodium sets no cookies and stores nothing on your visitors' devices, so a visitor is one device on one day. It counts less than tools that follow people around, and says so.
The definitions
- Visitors
- MethodOne device on one day, counted without cookies: an anonymous key made from that day's random salt, the device's IP address and browser, and your site. The key changes at your site's midnight and the IP address is never stored, so someone who comes back tomorrow counts again. A period's visitors are the sum of its days.
- Visits
- MethodA visitor's pages with no gap of 30 minutes or more between them. A longer gap starts a new visit.
- Pageviews
- MethodEach page that loaded with the Nodium script on it, and each move to a new page in an app that changes pages without reloading.
- Phone, tablet, desktop
- MethodFrom what each browser says it is: a phone, a tablet or a desktop. Only which of the three is kept, never the rest of what the browser says.
- Browsers
- MethodFrom what each browser says it is. Only its name is kept.
- Operating systems
- MethodFrom what each browser says it is. Only the system’s name is kept.
- On the site now
- MethodVisitors with a page view in the last 5 minutes. Above 1,000 it shows 1,000+.
- Source
- MethodWhere a visitor's first page of the day came from, in this order: an ad (a link tagged with a paid utm_medium, such as cpc), the link's utm_source tag, the site that linked to you (search engines and social sites by name, any other by its address), or Direct when there was none of these. A Google ad without UTM tags counts as Google, because the script doesn't keep a link's other parameters. Each visitor counts under one source a day, so the sources add up to Visitors.
- Channels
- MethodChannels group sources: search engines, social sites, paid ads, other sites, and Direct, a visit with no source.
- Campaigns
- MethodFrom the campaign tag (utm_campaign) on the link a visitor arrived by. Only tagged visits are listed.
- Rate
- MethodOf a source's visitors, the share who reached out that day. Shown from 30 visitors; below that, a dash.
- Cities
- MethodFrom the visitor’s network. The address is never kept. Places with too few visitors to name are in Other.
- Regions
- MethodFrom the visitor’s network. The address is never kept. Places with too few visitors to name are in Other.
- Countries
- MethodFrom the visitor’s network. The address is never kept.
- Pages
- MethodVisitors who saw each page. One visitor can see several, so the shares add up to more than 100%.
- Entry pages
- MethodThe first page of each visitor’s day on the site.
- Exit pages
- MethodThe last page of each visitor’s day on the site.
- Before reaching out
- MethodPages seen, on the day they reached out, by the people who sent a form or tapped your phone number or email. The share is of everyone who reached out.
- Outbound
- MethodVisitors who clicked a link to another site, by the link's site and page. The rest of the address is never kept.
- Downloads
- MethodVisitors who clicked a link to a file, such as a PDF, a spreadsheet, a document, a zip, a sound or a video, by the file's address.
- Not found
- MethodVisitors to a page your site answered as not found, by its address: the browser's own status for the page, or the one-line tag you put on your not-found page.
- Reached out
- MethodVisitors who sent a form on your site (except a search box), or tapped your phone number or email address, that day. Each counts once a day, under the first of form, call or email in that order, so the three add up to the total. Asking for directions isn't reaching out.
- Taps on your phone number and email address
- MethodVisitors who tapped a phone (tel:) or email (mailto:) link that day, once each a day, whatever else they did.
- Directions
- MethodVisitors who tapped a link to Google Maps, Apple Maps, Bing Maps, Waze or a map app that day. Counted and shown apart, but not as reaching out: asking the way doesn't mean they'll get in touch.
- Events
- MethodVisitors who did what you marked: a click on anything with the class nodium-event-<name>, or your site calling nodium("<name>"). They don't count as pageviews, and don't count as reaching out unless you say so.
- Then reached out
- MethodVisitors who looked at the page and reached out afterwards the same day, counted from their first look at it. The share shows from 30 visitors.
Read from the forms already on your pages, never what anyone types. How a send is recognised on each platform, and how sure we are of it, is on What the script reads.
- Saw the form
- MethodVisitors who had the form in view: at least 30% of it on the screen, or 250 pixels of a form taller than the screen.
- Started
- MethodVisitors who went into one of the form's fields or typed in one. For a form in a frame, focus moving into the frame, or the form provider's own start message.
- Sent
- MethodVisitors whose send your site showed: the form plugin's own sign that it was sent (Contact Form 7, WPForms, Gravity Forms, HubSpot), Webflow's success message, a confirmation on the next page, the form replaced or emptied with no error, or the next page within 10 seconds of the send. Each count says which.
- Start rate
- MethodStarted out of Saw the form. Shown from 30 who saw it; rounded down.
- Finish rate
- MethodSent out of Started. As a figure, over every form that counts as reaching out. Shown from 30 who started; rounded down. Its change is in points against the period before.
- Reached
- MethodVisitors who went into the field, by its label. The label is read from the page, never from what's typed.
- Stopped here
- MethodVisitors who started the form, didn't send it in that visit, and whose last field was this one.
- Errors
- MethodVisitors who saw the field flagged at least once: the browser's own check, the field marked invalid, or an error message beside it.
- Left empty
- MethodVisitors who tried to send the form with this field empty. Only empty or not is read, never what's typed.
- People
- MethodIn Reached out: for a form, the visitors who sent it; for Phone tap and Email tap, the visitors who tapped one; for an event, the visitors who did it. Rate is People out of the period's visitors, from 30 visitors.
- Sign-up forms
- MethodA form whose only fields are an email address and at most one box to tick starts as a sign-up: counted on its own row, not in Reached out. You can change how any form counts in Your forms.
Each insight is a mark on the row it's about: a source, a page, a form, a field, or under the chart the whole site. Every rule that fires has its mark; the Monday email lists the most useful first: where people are lost, then what goes with reaching out, then your site checks, then traffic, and within each the largest difference. Below its minimum a rule says nothing. No AI writes any of it.
- Form stop
- SaysMore people quit your contact form at “Phone” than at any other field.
- CountedEach of your forms, field by field, over the period: someone who started the form and didn't send it that day counts at the last field they went into.
- Shown from20 people who started the form.
- Shown whenOne field has more people who stopped there than any other, and at least 3. When several forms qualify, the one where that field holds the biggest share of the stops.
- Field errors
- Says12 people got an error on “Phone” in your contact form.
- CountedEach field of your forms over the period: the people who went into it, and of them those who saw it flagged at least once, by the browser's own check, the field marked invalid, or an error message beside it.
- Shown from20 people who went into the field.
- Shown whenAt least 5 of them saw an error on it. The field with the most, across your forms.
- Seen, not started
- Says300 saw your contact form; 9 started it.
- CountedEach of your forms over the period: the people who had it in view (at least 30% of it, or 250 pixels of a tall one), and of them those who went into one of its fields.
- Shown from100 people who saw the form.
- Shown whenFewer than 1 in 10 of them started it. The form with the lowest share.
- Finish rate by device
- SaysOn phones 18.0% finish your contact form; on computers 41.0%.
- CountedEach of your forms over the period, counted twice: on phones only and on computers only. Finish rate is the people who sent it out of those who started it.
- Shown from30 people who started the form on phones, and 30 on computers.
- Shown whenPhones finish at most half as often as computers. The form with the widest gap.
- Weak source
- SaysVisitors from your Facebook ads reached out 0.6% of the time, against 2.5% across the site.
- CountedEach visitor's day under the source of their first page that day: how many reached out that day, and how many viewed one page in all, against everyone who looked at a page on the site that day. Direct is left out.
- Shown from100 visitors from the source.
- Shown whenIts visitors reached out at most half as often as the site's, and more than half of them viewed one page. When several qualify, the one furthest below the site.
- Page lift
- SaysVisitors who looked at your Gallery were almost 4 times as likely to reach out.
- CountedFor each page: its visitors who reached out at or after their first view of it that day, against the day's other visitors who reached out without viewing it. Each visitor is one device on one day. Pages one of your forms was opened on are left out, since people reach out there.
- Shown from30 visitors who viewed the page, 30 who didn't, and 5 of its visitors who reached out afterwards.
- Shown whenIts visitors were at least 1.5 times as likely to reach out. When several pages qualify, the one with the biggest difference.
- Slow page that loses people
- SaysYour Services page takes 6.1 seconds to load on phones, and almost 7 in 10 phone visitors who start there don't view another page.
- CountedThe page's load time on a phone (LCP) from the latest weekly check, against its phone visits in the period: visits that started on the page, and of those, the ones that saw no other page.
- Shown from30 phone visits that started on the page.
- Shown whenIt loads in more than 4.0 seconds on a phone, and more than half of those visits ended there. When several qualify, the one that loses the largest share.
- Form accessibility
- SaysA question in the form on your Contact page has no label a screen reader can announce.
- Countedaxe-core's automated checks in the weekly check, on the home page, up to 2 pages with a form and the 2 most-visited pages: the rules that find a field without a name (label, select-name, aria-input-field-name, aria-toggle-field-name, input-button-name). Automated checks catch some accessibility problems, not all.
- Shown fromAny field the check finds.
- Shown whenThe check found one. When several pages have one, the one with the most visitors in the period.
- Broken link on a busy page
- SaysA link on your Gallery page is broken, and it's one of your 10 busiest pages.
- CountedA link to another page of your site that failed in the weekly check (an error, or no answer) and again when asked a day later, on a page ranked by its visitors in the period.
- Shown fromThe page is one of your 10 pages with the most visitors.
- Shown whenA broken link is on it. When several pages have one, the busiest.
- Search snippet missing
- SaysYour Railings page has no description for search results.
- CountedA page the weekly check read with no <title> or no meta description (or only spaces), among pages search engines may list: it loaded, isn't set to noindex and doesn't point elsewhere as canonical.
- Shown fromThe page had at least 1 visitor in the period.
- Shown whenIts title or description is missing. When several pages qualify, the one with the most visitors.
- Traffic change
- SaysVisitors were up 25% on the 30 days before.
- CountedThe period's visitors against the period before it, of the same length and cut at the same time of day, as the summary's change. Each visitor is one device on one day.
- Shown from50 visitors in each period, and a whole earlier period.
- Shown whenUp or down at least 20%.
- New source
- SaysNew in the last 30 days: 304 visitors from Facebook ads.
- CountedEach visitor's day under the source of their first page that day, against the period before it, of the same length. Direct is left out.
- Shown from10 visitors from the source, and a whole earlier period.
- Shown whenNo visitor came from it the period before. When several qualify, the one with the most visitors.
Once a week, and once soon after you install the script, NodiumBot reads your site and looks for what keeps people from finding it or using it. Each finding stays on your fix list until a later check no longer sees it, or you dismiss it. Automated checks catch some accessibility problems, not all.
- What the check reads
- ReadsYour robots.txt and sitemap, then up to 250 pages, starting from your home page, your 20 most-visited pages and the pages your forms were opened on, and following links to your own site. Links and images are asked whether they answer, not downloaded.
- NeverIt sends nothing: GET and HEAD requests only, and no form is ever sent. It asks for one page, link or image a second at most; a page opened in a browser loads its own files as any browser would. It obeys robots.txt under the name NodiumBot.
- WhenAbout once a week, at a time set for your site, and once within an hour of your first visit.
- In a browserA page with almost no text (under 200 characters) is opened in a browser once, at most 20 a check, so links drawn with scripts are found.
- Hidden from search
- NoindexA page that tells search engines not to list it (a robots meta tag or an X-Robots-Tag header saying noindex or none), shown only when it had a visitor in the last 30 days.
- Robots.txtYour robots.txt keeps every search engine out of the whole site.
- SitemapNo sitemap in robots.txt, at /sitemap.xml or at /sitemap_index.xml; or a sitemap that leaves out one of your 10 most-visited pages. A sitemap over 500 addresses isn't judged.
- Titles and descriptions
- MissingA page search engines may list (it loaded, isn't noindex, and doesn't name another page as its canonical) with no <title>, or no meta description, or only spaces.
- The sameTwo or more such pages with the same title, or the same description, ignoring case and spacing. Pages with a query string or a redirect aren't compared.
- Broken links and images
- BrokenA link to your own site, or an image on any site, that answers with an error or not at all. A site that turns the bot away (a challenge, or too many requests) doesn't count as broken.
- Asked twiceA failure is asked again a day later, and shown only if it fails again. It leaves the list when a later check finds it working, or no longer finds the link.
- Large images and insecure files
- LargeAn image over 500 KB, by the size the server reports, or by reading it when it doesn't say.
- Alt textAn image with no alt attribute. An empty alt (alt="") is fine: it marks a decoration.
- InsecureA file loaded over http: on a page served over https:, which browsers may block.
- Speed on phones
- MeasuredOn your home page and your 2 most-visited pages, in a browser set up as a phone (a 412 by 915 screen, the processor slowed 4 times), waiting for the page to load and 3 seconds more.
- SlowLoad time (largest contentful paint) over 4.0 seconds, time blocked by scripts over 0.6 seconds, or layout shift over 0.25: Google's lines for "poor". Times round down to a tenth of a second.
- A caveatThe network isn't slowed, so a phone on a weak connection can be slower than the time shown. We'd rather say too little than too much.
- Accessibility
- Checkedaxe-core's automated rules for WCAG 2.0 and 2.1, levels A and AA (wcag2a, wcag2aa, wcag21a, wcag21aa), on your home page, up to 2 pages with a form and your 2 most-visited pages. Only problems axe rates serious or critical are shown.
- Not checkedAutomated checks catch some accessibility problems, not all. Nothing here says a site meets a law or a standard.
- Phone visits that ended there
- CountedVisits from a phone whose first page was this one, and of those, the visits that saw no other page. Each visit is one device on one day; a reload of the same page stays one page.
- Used byThe note about a slow page that loses people.
- The period
- MethodToday, or the last 7 days, 30 days or 12 months, each ending now, with days starting at your site's midnight. 12 months is 52 weeks (364 days), so the chart's weekly bars are whole weeks. The 12 months before count their last day whole, because hour-by-hour records are kept 90 days.
- Up or down
- MethodAgainst the period before it, of the same length: the 30 days before for 30 days, yesterday up to this time for Today. The figure shows it as a percentage, rounded. Read aloud, it's a percentage once the earlier period has at least 50; below that we give the earlier count. Until your site has a whole earlier period, we don't compare.
- The weekly report's week
- MethodThe 7 whole days before the day the report goes out, with days starting at your site's midnight: your main page's 7 days, read at the very end of the day before. It's compared with the 7 days before those.
- Small numbers
- MethodA rate needs 30 visitors behind it. A figure's change shows as a percentage from any earlier count, and read aloud it's a percentage from 50 in the earlier period, the earlier count below that. Below a rule's minimum we give counts, or say there aren't enough visits yet to compare.
- Imported days
- MethodDays brought in from another tool's export keep that tool's counts under our names: visitors, pageviews, sources, pages, places and devices. Plausible and Fathom also count a visitor without a cookie, so their numbers are usually close to ours; Google Analytics counts users with a cookie, so its numbers usually differ. Nodium never replaces a day it counted itself.
- Your own visits
- MethodVisits from the addresses you list in Settings are dropped as they arrive and never counted. The addresses are kept in your site's settings only.
- Pageviews for billing
- MethodYour sites' pageviews together, counted as Pageviews are, in the calendar month, each site's month starting at its midnight on the 1st. The running figure is as of the last hourly count. A plan includes a number a month. Going over is never charged: we email you at 80% and 100% of it, and ask you to move up only after two months in a row over.
Conservative rules
- A visitor is one device on one day. Nothing links one day to the next, so a period's visitors are the sum of its days, and someone who comes back tomorrow counts again.
- Nothing is counted twice: each visitor counts once a day under one source, and once a day if they reached out, under the first of form, call or email.
- Ambiguity rounds down: a rate is shown rounded down, and a figure we can't be sure of counts at the lower end.
- Small numbers say so: a rate needs 30 visitors behind it; a figure's change is a rounded percentage, and read aloud below 50 in the earlier period it gives the earlier count; below a rule's minimum we give counts, or say there aren't enough visits yet to compare.
- Periods are compared only when both are whole: until your site has a whole earlier period, we don't compare.