Menu links that scroll to a section change only the part after the # sign, so Analytics records one page view. Send an event or virtual pageview for each section reached, and judge the site by those.

Five sections and one page in the reports

A one-page site has a menu across the top: services, gallery, prices, about, contact. Each link scrolls smoothly down to its section, and the whole site lives at one address.

After a month, the owner opens Analytics. The pages report lists a single page, the bounce rate is very high, and the average visit seems to last almost no time.

Visitors are reading, scrolling and phoning. The reports miss all of it, for reasons built into how Analytics counts.

What the menu links actually change

A menu link on a one-page site points to the same page with a # sign and a name added, such as #prices. The browser scrolls to the matching section and the address bar changes.

Nothing new loads. The tracking code runs once, when the page first opens, and sends one page view. Scrolling and jumping between sections sends nothing more.

Analytics also drops everything after the # sign when it records an address. Even if the code ran again, every section would be filed as the same page.

Figures that mislead on a single page

Several familiar figures assume visitors move from page to page, and on a one-page site they mislead:

The third surprises most owners. Analytics has no stopwatch; it subtracts the time of one hit from the time of the next, and a visit with a single hit has nothing to subtract.

Events for the sections people reach

An event is a small extra message the page sends to Analytics when something happens: a menu link clicked, a section scrolled into view, a form sent.

A short script can watch the page and send one event the first time each section appears on screen, named after that section. A click on a menu link can send its own.

The events report then shows how many visits reached the prices, the gallery or the contact form, which is the question a one-page site actually needs answered.

Events work with the older Analytics code and with Universal Analytics; only the line that sends them differs.

Virtual pageviews instead

A virtual pageview is a page view the site sends with a made-up address, such as /prices, when a section is reached. Analytics files it as if it were a real page.

The pages report then lists each section, and funnels and destination goals work as though the site had several pages.

The cost is that page view totals no longer count page loads. Keep the made-up addresses in a folder of their own, such as /section/, so anyone reading the reports can tell them apart.

A form that never leaves the page

Most one-page sites end with an enquiry form that sends the message in the background and shows a thank-you line where the form was.

A destination goal waits for a separate thank-you address, and this site never shows one. Have the script send an event or virtual pageview only when the form reports success.

Count successes, not button presses. A visitor who presses Send with a field missing has not enquired yet, and a goal counting presses overstates the enquiries.

A worked example

A wedding planner's site is one long page: a photograph of a reception, then packages, a gallery of past weddings, words from couples and an enquiry form at the bottom.

The planner wanted to know whether couples looked at the packages before enquiring. The reports showed one page, and almost every visit as a bounce.

The form answered in place, with a thank-you line and no new address, so enquiries left no trace anywhere but her inbox.

Her developer added an event for each section the first time it came into view, another for each menu click, and a virtual pageview for a successfully sent form, set up as a goal.

The reports now show how far down the page visits travel and which sections come before an enquiry. The page itself did not change at all.

The bounce rate on a one-page site

On a one-page site, a visitor who reads every section and then calls still counts as a bounce, unless something sends a second hit.

Once section events are in place, decide whether they count as interaction. If they do, a visitor who scrolls past the first screen stops counting as a bounce.

If they are marked as non-interaction events, the bounce rate stays as it was, and the events report carries the story. Either choice is defensible; switching between them is not.

Time on the site, corrected

With events arriving as a visitor scrolls, Analytics finally has later hits to measure against, so time on the site begins to mean something.

It still stops at the last hit. A visitor who reads the contact section for two minutes and then calls is counted only up to the moment that section appeared.

Treat the figure as a lower limit, useful for comparing one month with the next rather than as a true reading time.

The counter-case

A one-page site for a small, simple offer may not need any of this. If the only question is whether the phone rings, the phone itself answers it.

And longer sites have their own reasons for a misleading bounce rate, so the figure deserves caution everywhere.

But once the owner wants to know which part of the page leads to enquiries, or plans to pay for visits through advertising, the events are worth adding, by whoever looks after the site's code.

Setting up section tracking

  1. List the sections the menu links to.
  2. Choose events or virtual pageviews.
  3. Send one the first time each section appears.
  4. Track menu clicks separately from scrolling.
  5. Record a sent form and make it a goal.
  6. Decide whether section events count as interaction.
  7. Note the date the tracking changed.

Step seven is easy to forget. The bounce rate and time on the site shift on that date, and anyone comparing months later needs to know the tracking changed, not the visitors.

Telling apart two links that lead to the same page, which Analytics otherwise credits with one shared figure, is covered in click percentages on two links to the same page.


Frequently asked questions

Why does Analytics show only one page for my site?

Your menu links change only the part of the address after the # sign. No new page loads, and Analytics ignores that part anyway, so it records one page.

Why is the bounce rate so high?

A bounce is a visit with a single hit. On a one-page site nothing sends a second hit unless you add events, so nearly every visit counts as one.

Why do visits seem to last no time?

Analytics measures time between hits. A visit with only one hit has no second time to measure against, so it is recorded as lasting zero seconds.

Should I use events or virtual pageviews?

Events keep page view totals honest and suit most one-page sites. Virtual pageviews make sections appear as pages, which helps with funnels and destination goals.

How do I count enquiries from the form?

Have the form's script send an event or virtual pageview only when the message is sent successfully, then set a goal on that hit.

Will adding events change my figures?

Yes. The bounce rate and time on the site change on the day events start, so add an annotation in Analytics for anyone comparing months later.

West Coast Media Solutions Inc. provides web design, web development, hosting, digital marketing, and business consulting to organisations across Canada, drawing on more than twenty-five years in the field.

Reports showing one page for the whole site?

Send us the address, and we will set up section and form tracking that shows how far visitors read.

Start a Conversation