bytecamp.ru
Настоящий сайт и его аналитику не изменяем.
Маршрут практикиИСХОДНИК 20 · ТЕМА 05 / 01
На прошлом занятии мы создали Analytics Account, GA4 Property и Web Data Stream. Для знакомства указали bytecamp.ru и получили Measurement ID.
Маршрут практикиИСХОДНИК 21 · ТЕМА 05 / 02
Каждый студент работает со своим сайтом: изменяет код, устанавливает Google Tag, проверяет события и экспериментирует с UTM.
Настоящий сайт и его аналитику не изменяем.
Своя копия кода, собственная публикация и учебный поток GA4.
Маршрут практикиИСХОДНИК 22 · ТЕМА 05 / 03
Пройдём путь от шаблона до первого посещения в Realtime. Сайт опубликуем дважды: сначала без тега, затем с аналитикой.
GitHub → VS CodeИСХОДНИК 23 · ТЕМА 05 / 04
Откройте шаблон учебного проекта. Он уже содержит HTML, CSS и JavaScript.
GitHub → VS CodeИСХОДНИК 24 · ТЕМА 05 / 05
Три страницы, один файл стилей и один файл JavaScript — основа дальнейшей практики.
ga4-analytics-lab/
├── index.html
├── about.html
├── contacts.html
├── css/
│ └── style.css
├── js/
│ └── script.js
└── README.mdindex.html — главная.about.html — о проекте.contacts.html — контакты.css/style.css — стили.js/script.js — поведение сайта.Дальше добавим клики, формы, события, воронки и Google Tag Manager.
GitHub → VS CodeДОПОЛНЕНИЕ · АККАУНТ 1 / 2
На учебном компьютере в браузере часто остаётся аккаунт предыдущего студента. Если не выйти, копия шаблона появится у чужого пользователя, а вы не сможете её изменить.
GitHub → VS CodeДОПОЛНЕНИЕ · АККАУНТ 2 / 2
Войдите под своей учётной записью и убедитесь, что дальше работаете именно в ней.
github.com/ВАШ-ЛОГИН.Выйти из чужого аккаунта и войти в свой.
Accounts → Sign out, если сохранён чужой вход.
Войти тем же GitHub-аккаунтом.
GitHub → VS CodeИСХОДНИК 25 · ТЕМА 05 / 06
Каждому студенту нужен собственный GitHub-репозиторий.
GitHub → VS CodeИСХОДНИК 26 · ТЕМА 05 / 07
Укажите владельца — ваш GitHub-аккаунт — и название проекта.
ga4-analytics-lab
или
ga4-analytics-lab-ivanovНажмите Create repository.
GitHub → VS CodeИСХОДНИК 27 · ТЕМА 05 / 08
Проверьте владельца в адресе нового репозитория.
github.com/ВАШ-ЛОГИН/ga4-analytics-labGitHub → VS CodeИСХОДНИК 28 · ТЕМА 05 / 09
В Visual Studio Code откройте Source Control → Clone Repository. Другой путь — команда Git: Clone в палитре команд.
GitHub → VS CodeИСХОДНИК 29 · ТЕМА 05 / 10
В списке GitHub repositories выберите свою копию ga4-analytics-lab.
GitHub → VS CodeИСХОДНИК 30 · ТЕМА 05 / 11
В Explorer должны появиться все файлы проекта.
index.html
about.html
contacts.html
css/
js/
README.mdОткройте index.html. Пока ничего не изменяем.
Локальная проверкаИСХОДНИК 31 · ТЕМА 05 / 12
Сначала проверьте сайт на локальном веб-сервере. Например, с расширением Live Server: правый клик по index.html → Open with Live Server.
http://127.0.0.1:5500/
или http://localhost:5500/Локальная проверкаИСХОДНИК 32 · ТЕМА 05 / 13
Localhost доступен на вашем компьютере. Для совместной проверки и UTM-ссылок опубликуем сайт в интернете.
Адрес локального сервера на компьютере студента.
Публичный HTTPS-адрес, который можно открыть с другого устройства.
Публикация на VercelИСХОДНИК 33 · ТЕМА 05 / 14
Публикация на VercelИСХОДНИК 34 · ТЕМА 05 / 15
Выберите вход через GitHub и подключите нужный репозиторий.
Публикация на VercelИСХОДНИК 35 · ТЕМА 05 / 16
GitHub хранит исходный код и его историю. Vercel публикует выбранную версию проекта.
Публикация на VercelИСХОДНИК 36 · ТЕМА 05 / 17
В Dashboard откройте Add New → Project.
Add New → ProjectВ другой версии интерфейса кнопка может называться New Project.
Публикация на VercelИСХОДНИК 37 · ТЕМА 05 / 18
В разделе Import Git Repository найдите свою копию ga4-analytics-lab и нажмите Import.
Публикация на VercelИСХОДНИК 38 · ТЕМА 05 / 19
В Configure Project проверьте Project Name.
ga4-analytics-lab-ivanovМожно оставить ga4-analytics-lab или добавить фамилию. Имя участвует в формировании адреса; точный домен проверим после публикации.
Публикация на VercelИСХОДНИК 39 · ТЕМА 05 / 20
Проект состоит из HTML, CSS и JavaScript. Фреймворк здесь не используется.
Framework Preset → OtherПубликация на VercelИСХОДНИК 40 · ТЕМА 05 / 21
HTML-файлы уже готовы к публикации. У проекта нет сборки React, Next.js или Vite.
Framework Preset: Other
Build Command: пусто
Output Directory: .Публикация на VercelИСХОДНИК 41 · ТЕМА 05 / 22
index.html находится в корне репозитория. Оставьте корневой Root Directory.
/
├── index.html
├── about.html
├── contacts.html
├── css/
└── js/Публикация на VercelИСХОДНИК 42 · ТЕМА 05 / 23
Настройки готовы. Нажмите Deploy и дождитесь завершения публикации.
Публикация на VercelИСХОДНИК 43 · ТЕМА 05 / 24
После успешного Deployment откройте назначенный публичный адрес.
https://ga4-analytics-lab-ivanov.vercel.appПубликация на VercelИСХОДНИК 44 · ТЕМА 05 / 25
Нажмите Visit и проверьте сайт на домене .vercel.app.
Обновление Web StreamИСХОДНИК 45 · ТЕМА 05 / 26
В учебном Web Data Stream пока указан bytecamp.ru. Теперь у нас есть собственный публичный сайт.
Обновление Web StreamИСХОДНИК 46 · ТЕМА 05 / 27
Продолжаем работать с существующим учебным Web Data Stream: обновляем URL и название.
Обновление Web StreamИСХОДНИК 47 · ТЕМА 05 / 28
В учебном ресурсе Google Analytics откройте:
Обновление Web StreamИСХОДНИК 48 · ТЕМА 05 / 29
Найдите Web Data Stream, который создали на прошлом занятии. В Website URL пока указан bytecamp.ru.
Обновление Web StreamИСХОДНИК 49 · ТЕМА 05 / 30
В Web stream details найдите значок карандаша в верхней части сведений о потоке.
Web stream details → EditНажмите значок, чтобы изменить URL и название.
Обновление Web StreamИСХОДНИК 50 · ТЕМА 05 / 31
Выберите протокол https:// и замените домен сайта.
ga4-analytics-lab-ivanov.vercel.apphttps:// в поле домена./about.html или другую страницу.Обновление Web StreamИСХОДНИК 51 · ТЕМА 05 / 32
Обновите Stream name, чтобы название соответствовало вашему сайту.
GA4 Analytics Lab — Ivanov
или Student Analytics WebsiteОбновление Web StreamИСХОДНИК 52 · ТЕМА 05 / 33
Проверьте новый домен, протокол и название. Нажмите Update stream.
Обновление Web StreamИСХОДНИК 53 · ТЕМА 05 / 34
URL и название обновились. Measurement ID остался прежним, потому что мы редактировали тот же поток.
G-XXXXXXXXXXЕго будем использовать при подключении сайта.
Установка Google TagИСХОДНИК 55 · ТЕМА 05 / 36
Опубликованный сайт, ресурс, поток и Measurement ID готовы. Осталось добавить на сайт код передачи данных.
Установка Google TagИСХОДНИК 56 · ТЕМА 05 / 37
В сведениях о потоке найдите раздел Google tag.
Google tag → View tag instructionsОткройте инструкции установки.
Установка Google TagИСХОДНИК 57 · ТЕМА 05 / 38
У нас есть доступ к HTML, поэтому выберите Install manually.
Установка Google TagИСХОДНИК 58 · ТЕМА 05 / 39
Нажмите Copy и скопируйте весь блок Google Tag.
<!-- Google tag (gtag.js) -->
… полный код из вашего GA4 …Установка Google TagДОПОЛНЕНИЕ · РАЗБОР КОДА 1 / 3
Скопированный тег состоит из двух частей: сначала подключается библиотека, затем она настраивается на ваш поток. Обе части нужны и работают вместе.
Установка Google TagДОПОЛНЕНИЕ · РАЗБОР КОДА 2 / 3
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>src — адрес библиотеки gtag.js на серверах Google.?id=G-XXXXXXXXXX — ваш Measurement ID: он указывает, в какой поток отправлять данные.async — браузер загружает скрипт параллельно и не задерживает отрисовку страницы.Установка Google TagДОПОЛНЕНИЕ · РАЗБОР КОДА 3 / 3
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');window.dataLayer = window.dataLayer || [] — создаёт массив-очередь, если его ещё нет на странице.function gtag(){dataLayer.push(arguments);} — складывает любой вызов в эту очередь.gtag('js', new Date()) — отмечает момент инициализации.gtag('config', 'G-XXXXXXXXXX') — включает сбор для потока и отправляет первый page_view.Установка Google TagИСХОДНИК 59 · ТЕМА 05 / 40
Вернитесь в VS Code, откройте index.html и найдите начало секции <head>.
<html lang="ru">
<head>
<!-- сюда добавим Google Tag -->Тег разместим сразу после открывающего <head>.
Установка Google TagИСХОДНИК 60 · ТЕМА 05 / 41
<head>Вставьте полный код Google Tag из GA4 в указанное место.
<!DOCTYPE html>
<html lang="ru">
<head>
<!-- Google Tag из вашего GA4 -->
<meta charset="UTF-8">
<title>GA4 Analytics Lab</title>
</head>Установка Google TagИСХОДНИК 61 · ТЕМА 05 / 42
Добавьте тот же тег сразу после <head> во все три страницы.
index.htmlabout.htmlcontacts.htmlCommit → ProductionИСХОДНИК 62 · ТЕМА 05 / 43
Сохраните все изменённые HTML-файлы. Локальная версия содержит тег, опубликованная ещё не обновлена.
Commit → ProductionИСХОДНИК 63 · ТЕМА 05 / 44
Откройте Source Control и проверьте изменения в каждом HTML-файле.
index.htmlabout.htmlcontacts.htmlCommit → ProductionИСХОДНИК 64 · ТЕМА 05 / 45
Введите сообщение коммита и нажмите Commit.
Add GA4 Google tagПосле этого выполните Sync Changes или Push, чтобы отправить commit в GitHub.
Commit → ProductionИСХОДНИК 65 · ТЕМА 05 / 46
После Push в production-ветку Vercel запускает новый Deployment.
Commit → ProductionИСХОДНИК 66 · ТЕМА 05 / 47
Откройте свой Vercel Project → Deployments.
Add GA4 Google tag.Commit → ProductionИСХОДНИК 67 · ТЕМА 05 / 48
Откройте постоянный Production URL своего проекта.
https://ваш-проект.vercel.appОбновите страницу. Эта версия теперь должна содержать Google Tag. Итоговую проверку проводим на публичном сайте.
Проверка RealtimeИСХОДНИК 68 · ТЕМА 05 / 49
В View tag instructions найдите Test your website. Укажите полный адрес и нажмите Test.
https://ga4-analytics-lab-ivanov.vercel.appПроверка RealtimeИСХОДНИК 69 · ТЕМА 05 / 50
Обнаружение тега подтверждает установку кода. Теперь проверим, что события действительно поступают.
Проверка RealtimeИСХОДНИК 70 · ТЕМА 05 / 51
Откройте опубликованный сайт и выполните несколько переходов.
Проверка RealtimeИСХОДНИК 71 · ТЕМА 05 / 52
При открытии страницы браузер получает HTML с Vercel, загружает Google Tag и отправляет событие в GA4.
Проверка RealtimeИСХОДНИК 72 · ТЕМА 05 / 53
В Google Analytics откройте Reports → Realtime.
Reports → RealtimeПроверка RealtimeИСХОДНИК 73 · ТЕМА 05 / 54
Проверьте Active users. На учебном сайте посетителей мало, поэтому ваше посещение, вероятно, окажется среди них.
Проверка RealtimeИСХОДНИК 74 · ТЕМА 05 / 55
Найдите карточку просмотренных страниц. Сравните её с тем, что только что открывали.
Проверка RealtimeИСХОДНИК 75 · ТЕМА 05 / 56
В списке событий найдите page_view — просмотр страницы.
page_viewUTM-переходИСХОДНИК 76 · ТЕМА 05 / 57
Вернёмся к UTM: теперь размеченная ссылка ведёт на сайт с подключённым GA4.
https://ВАШ-ПРОЕКТ.vercel.app/?utm_source=telegram&utm_medium=social&utm_campaign=ga4_labИсточник перехода.
Тип канала.
Учебная кампания.
UTM-переходИСХОДНИК 77 · ТЕМА 05 / 58
Подставьте свой домен, скопируйте полную UTM-ссылку и откройте её в браузере.
UTM-переходДОПОЛНЕНИЕ · UTM-ССЫЛКИ 1 / 2
Сайт один, а ссылок несколько. utm_source — площадка, utm_medium — тип канала, utm_campaign — общее имя кампании.
https://ваш-проект.vercel.app/?utm_source=telegram&utm_medium=social&utm_campaign=ga4_lab
https://ваш-проект.vercel.app/?utm_source=vk&utm_medium=social&utm_campaign=ga4_lab
https://ваш-проект.vercel.app/?utm_source=youtube&utm_medium=video&utm_campaign=ga4_lab
https://ваш-проект.vercel.app/?utm_source=email&utm_medium=letter&utm_campaign=ga4_lab
https://ваш-проект.vercel.app/?utm_source=qr&utm_medium=offline&utm_campaign=ga4_labUTM-переходДОПОЛНЕНИЕ · UTM-ССЫЛКИ 2 / 2
Отправьте каждую ссылку в своё место и откройте её. Чем больше разных источников, тем нагляднее будет отчёт.
Пост или сообщение в чате.
Описание под роликом.
Письмо себе или однокурснику.
QR-код на бумаге.
UTM-переходИСХОДНИК 78 · ТЕМА 05 / 59
Теперь GA4 получает события с сайта, код и публикацию которого мы контролируем сами.
UTM-переходДОПОЛНЕНИЕ · ОБРАБОТКА 1 / 3
Событие и его источник попадают в отчёты по-разному. page_view появляется в Realtime за секунды, а источник, канал и кампания вычисляются позже — на этапе обработки данных.
Факт события: page_view, посещённые страницы, активные пользователи.
Источник, канал и кампания — после обработки на стороне GA4.
UTM-переходДОПОЛНЕНИЕ · ОБРАБОТКА 2 / 3
Google Tag не отправляет utm_source, utm_medium и utm_campaign отдельными полями. Он передаёт адрес страницы целиком, а метки из него разбирает уже GA4.
POST https://www.google-analytics.com/g/collect
tid G-XXXXXXXXXX
en page_view
dl https://ваш-проект.vercel.app/?utm_source=telegram&utm_medium=social&utm_campaign=ga4_labtid — Measurement ID вашего потока.en — имя события, здесь page_view.dl — адрес страницы вместе с UTM-метками.UTM-переходДОПОЛНЕНИЕ · ОБРАБОТКА 3 / 3
На занятии проверяем факт сбора. Источник и кампанию смотрим в стандартном отчёте, когда обработка завершится.
Контроль результатаИСХОДНИК 79 · ТЕМА 05 / 60
Редактируем исходные файлы.
Храним проект и историю изменений.
Размещаем сайт в интернете.
Передаёт события из браузера.
Принимает и обрабатывает события.
Описывает источник перехода в ссылке.
Контроль результатаИСХОДНИК 80 · ТЕМА 05 / 61
Сайт обновляется через версию кода в GitHub. Редактирование выполняем локально в VS Code.
Контроль результатаИСХОДНИК 81 · ТЕМА 05 / 62
Измените заголовок в index.html и опубликуйте новую версию.
<h1>GA4 работает</h1>Контроль результатаИСХОДНИК 82 · ТЕМА 05 / 63
HTML, CSS и JavaScript меняются, Vercel создаёт новые Deployment. Подключение к тому же потоку сохраняется.
Один Measurement ID во всех версиях сайта
Контроль результатаИСХОДНИК 83 · ТЕМА 05 / 64
Контроль результатаИСХОДНИК 84 · ТЕМА 05 / 65
github.com/user/ga4-analytics-lab
ga4-analytics-lab-user.vercel.app
URL соответствует учебному сайту.
Установлен во всех трёх HTML-файлах.
Есть реальное посещение и page_view.
Контроль результатаИСХОДНИК 85 · ТЕМА 05 / 66
Архитектура и продолжениеИСХОДНИК 86 · ТЕМА 05 / 67
Архитектура и продолжениеИСХОДНИК 87 · ТЕМА 05 / 68
page_view нам недостаточноПросмотры показывают посещённые страницы. Для анализа результата нужно определить, какие действия считать значимыми.
Какую кнопку нажали?
Заявка успешно принята?
Какой материал скачали?
Архитектура и продолжениеИСХОДНИК 88 · ТЕМА 05 / 69
Дальше разберём автоматические события, Enhanced Measurement, имена и параметры, собственные события, проверку и Key Events.