Skip to content

Commit 839c264

Browse files
Sofie Toft Kristensengitbook-bot
authored andcommitted
GITBOOK-43: No subject
1 parent 4e866ea commit 839c264

26 files changed

+158
-423
lines changed

13/umbraco-ums/SUMMARY.md

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
11
# Table of contents
22

3+
* [Umbraco uMS Documentation](README.md)
4+
35
## Installation
46

5-
* [Umbraco uMS Documentation](README.md)
67
* [Installation](installation/installation.md)
78
* [Troubleshooting Installs](installation/troubleshooting-installs.md)
89

10+
## Upgrading
11+
12+
* [Migrate from uMarketingSuite](upgrading/migrate-from-umarketingsuite.md)
13+
914
## Getting Started
1015

1116
* [Getting Started](getting-started/README.md)
@@ -46,6 +51,7 @@
4651
* [Forms](marketers-and-editors/analytics/forms.md)
4752
* [Videos](marketers-and-editors/analytics/videos.md)
4853
* [Scroll Heatmap](marketers-and-editors/analytics/scroll-heatmap.md)
54+
* [Difference between Google Analytics and uMS](marketers-and-editors/analytics/difference-in-analytics-between-google-analytics-and-umarketingsuite.md)
4955
* [A/B Testing](marketers-and-editors/ab-testing/README.md)
5056
* [What is A/B testing](marketers-and-editors/ab-testing/what-is-ab-testing.md)
5157
* [Types of A/B Tests](marketers-and-editors/ab-testing/types-of-ab-tests/README.md)
@@ -143,21 +149,7 @@
143149
* [Headless](developers/headless/README.md)
144150
* [Using the Marketing API](developers/headless/using-the-marketing-api.md)
145151
* [Headless Example](developers/headless/headless-example.md)
146-
* [Support](developers/support/README.md)
147-
* [Known issues and work arounds](developers/support/known-issues-and-work-arounds/README.md)
148-
* [Difference in analytics between Google Analytics and uMS](developers/support/known-issues-and-work-arounds/difference-in-analytics-between-google-analytics-and-umarketingsuite.md)
149-
* [You cannot select persona or journey images](developers/support/known-issues-and-work-arounds/you-cant-select-persona-or-journey-images.md)
150-
* [Boot failed after moving to Azure SQL](developers/support/known-issues-and-work-arounds/boot-failed-after-moving-to-azure-sql.md)
151-
* [Boot failed when updating to uMS 1.15](developers/support/known-issues-and-work-arounds/boot-failed-when-updating-to-umarketingsuite-1-15.md)
152-
* [Single-page A/B testing and personalization does not always work in Umbraco 10.0](developers/support/known-issues-and-work-arounds/single-page-ab-testing-and-personalization-does-not-always-work-in-umbraco-10-0.md)
153-
* [uMS modules features not loading](developers/support/known-issues-and-work-arounds/umarketingsuite-modules-features-not-loading.md)
154-
* [Notifications not working in Umbraco 8](developers/support/known-issues-and-work-arounds/notifications-not-working-in-umbraco-8.md)
155-
* [Font Awesome icon finder 1.1.0 breaks the Date Picker](developers/support/known-issues-and-work-arounds/font-awesome-icon-finder-1-1-0-breaks-datepicker.md)
156-
* [Fallback with MultiURLPicker property editor not working](developers/support/known-issues-and-work-arounds/fallback-with-multiurlpicker-property-editor-not-working.md)
157-
* [umbraco-cloud-migration-plan-failed-at-step-addcolumnstoreindexesforanalyticstables-locally](developers/support/known-issues-and-work-arounds/umbraco-cloud-migration-plan-failed-at-step-addcolumnstoreindexesforanalyticstables-locally.md)
158-
* [Visiting page with referral causes stackoverflow exception](developers/support/known-issues-and-work-arounds/visiting-page-with-referral-causes-stackoverflow-exception.md)
159-
* [Incorrect statistics in Google Analytics using GA4 bridge](developers/support/known-issues-and-work-arounds/incorrect-statistics-in-google-analytics-using-ga4-bridge.md)
160-
* [Huge reporting performance spike when using Umbraco 10 and higher](developers/support/known-issues-and-work-arounds/huge-reporting-performance-spike-when-using-umbraco-10-and-higher.md)
152+
* [Support](developers/support.md)
161153

162154
## Security and Privacy
163155

13/umbraco-ums/developers/analytics/extending-analytics/sending-data-to-the-gtm-datalayer.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
---
22
description: >-
3-
Discover how to push A/B testing and personalization variables from uMarketingSuite to the
4-
Google Tag Manager (GTM) data layer in Razor templates.
3+
Discover how to push A/B testing and personalization variables from
4+
uMarketingSuite to the Google Tag Manager (GTM) data layer in Razor
5+
templates.
56
---
67

7-
# Sending Data to the GTM Data Layer
8+
# Sending data to the GTM Datalayer
89

910
The uMarketingSuite provides a partial view that pushes variables related to A/B testing and personalization to the Google Tag Manager (GTM) data layer.
1011

1112
The following variables are pushed:
1213

13-
- **inabtest: true** - if the visitor participates in an active A/B test on the page; otherwise **false**.
14+
* **inabtest: true** - if the visitor participates in an active A/B test on the page; otherwise **false**.
1415

15-
{% hint style="info" %}
16-
This will also be **true** if the visitor is assigned to the "A" variant which is the original page.
17-
{% endhint %}
18-
19-
- **abtestname** - The name of the A/B test the visitor is participating in. If there is no active A/B test, the value will be **null**
20-
- **abtestvariant** - The name of the A/B test variant assigned to the visitor. If there is no active A/B test, the value will be **null**
21-
- **personalized: true** - If personalisation is applied to the page for the visitor; otherwise **false**.
22-
- **personalizationname** - The name of the active personalization. If there is no active personalization, the value will be **null**.
16+
{% hint style="info" %}
17+
This will also be **true** if the visitor is assigned to the "A" variant which is the original page.
18+
{% endhint %}
19+
* **abtestname** - The name of the A/B test the visitor is participating in. If there is no active A/B test, the value will be **null**
20+
* **abtestvariant** - The name of the A/B test variant assigned to the visitor. If there is no active A/B test, the value will be **null**
21+
* **personalized: true** - If personalisation is applied to the page for the visitor; otherwise **false**.
22+
* **personalizationname** - The name of the active personalization. If there is no active personalization, the value will be **null**.
2323

2424
To render the partial view in your Razor template, use the following line:
2525

13/umbraco-ums/developers/analytics/scroll-heatmap.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
2+
icon: square-exclamation
23
description: >-
34
Learn how you can use the Scroll Heatmap in uMS to gather data on the
45
behaviour of your visitors.
5-
icon: square-exclamation
66
---
77

88
# Scroll Heatmap
@@ -13,6 +13,6 @@ The feature gives a visual representation of the average scroll depth of your vi
1313

1414
An advantage is that you do not need to integrate any 3rd-party tools. This will prevent additional load times and possible issues with data ownership.
1515

16-
![]()
16+
![](../../marketers-and-editors/analytics)
1717

1818
The heatmap only collects data if [the client-side script](../../../../analytics/clientside-events-and-additional-javascript-files/) is installed on your website.
Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
---
2-
description: The Umbraco uMS package is all about data, data and more data. To make the most out of this data and do it the most efficient way we have four different stages where the data goes to.
2+
description: >-
3+
The Umbraco uMS package is all about data, data, and more data. To make the
4+
most out of this data and do it the most efficient way we have four different
5+
stages where the data goes to.
36
---
47

58
# Dataflow Pipeline
69

7-
1. [Data collection](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-collection/): This is where the visitordata is collected and stored for a moment in memory of the server.
8-
2. [Data storage](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-storage/): This is where the data from memory goes to the database.
9-
3. [Data processing](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-parsing/): The data is processed at a later moment to make it more efficient and normalized
10-
4. [Data reporting](/the-umarketingsuite-broad-overview/dataflow-pipeline/reporting/): And finally the data is reported within the Umbraco uMS
10+
1. [Data collection](../../../../../the-umarketingsuite-broad-overview/dataflow-pipeline/data-collection/): This is where the visitor data is collected and stored for a moment in the memory of the server.
11+
2. [Data storage](../../../../../the-umarketingsuite-broad-overview/dataflow-pipeline/data-storage/): This is where the data from memory goes to the database.
12+
3. [Data processing](../../../../../the-umarketingsuite-broad-overview/dataflow-pipeline/data-parsing/): The data is processed at a later moment to make it more efficient and normalized
13+
4. [Data reporting](../../../../../the-umarketingsuite-broad-overview/dataflow-pipeline/reporting/): Finally the data is reported within the Umbraco uMS
1114

12-
The concept of this dataflow is the most important concept to grasp when using Umbraco uMS.
15+
The concept of this dataflow is the most important concept to grasp when using Umbraco uMS.
Lines changed: 42 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1,85 @@
11
---
2-
description: This is the first phase of the data flow. In this stage, the data is collected from the user and stored temporarily in memory.
2+
description: >-
3+
This is the first phase of the data flow. In this stage, the data is collected
4+
from the user and stored temporarily in memory.
35
---
46

5-
# Data collection
6-
7+
# Data Collection
78

89
## Server side collection
910

1011
Umbraco uMS works via serverside collecting meaning that all initial visitor data is collected on the server and not sent via JavaScript for example. When a visitor visits your website the Umbraco uMS code checks whether you already have an Umbraco uMS cookie. If not, it creates one and sends it back to you.
1112

1213
At the same time the visitor is making a request the visitor sends all kinds of data to the server:
1314

14-
- Which browser the visitors are using
15-
- Which URL is requested
16-
- If there was any referring page (where did the visitor come from)
17-
- At what time the page is requested
18-
- Which IP Address is used
19-
- Which operation system is used
20-
- Which type of device is used
21-
- Which cookies are sent
15+
* Which browser the visitors are using
16+
* Which URL is requested
17+
* If there was any referring page (where did the visitor come from)
18+
* At what time the page is requested
19+
* Which IP Address is used
20+
* Which operation system is used
21+
* Which type of device is used
22+
* Which cookies are sent
2223

2324
This data is all collected and, because of the efficiency stored for a while in the web server memory. The idea is that storing this data in memory is faster than directly writing it to the database. It is more efficient to store multiple database records at once than to store the database records one at a time.
2425

25-
In the next phase, the data in memory will [be stored in the database](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-storage/).
26+
In the next phase, the data in memory will [be stored in the database](../../../../../the-umarketingsuite-broad-overview/dataflow-pipeline/data-storage/).
2627

2728
The beauty of server-side collection is that it always works and you're not relying on JavaScript for example. Also, there is no way for clients to block this behavior because this is "how the internet works".
2829

29-
### Collected requests
30+
### Collected requests
3031

31-
Only page requests are collected in Umbraco uMS. Requests to images (.png, .jpg, etcetera) and CSS files are ignored.
32+
Only page requests are collected in Umbraco uMS. Requests to images (.png, .jpg ) and CSS files are ignored.
3233

3334
Also, all requests to the /Umbraco/-folder are ignored.
3435

3536
### Configuration options
3637

37-
There are different [configuration options](/installing-umarketingsuite/configuration-options-1-x/) to adjust the collecting process.
38+
There are different [configuration options](../../../../../installing-umarketingsuite/configuration-options-1-x/) to adjust the collecting process.
3839

39-
- You can limit the amount of data records stored in memory. If you are limited in memory you can adjust these settings to fit your needs.
40-
- The IP Address is anonymized by default. There is an option to change this
41-
- You can turn off server-side tracking. This can be useful if not every page request reaches your website. This could be the case if you're using CloudFlare for example.
40+
* You can limit the amount of data records stored in memory. If you are limited in memory you can adjust these settings to fit your needs.
41+
* The IP Address is anonymized by default. There is an option to change this
42+
* You can turn off server-side tracking. This can be useful if not every page request reaches your website. This could be the case if you're using CloudFlare for example.
4243

43-
## Client side collection
44+
## Client-side collection
4445

4546
The amount of data that you can collect via serverside is limited. Visitors have all kinds of interactions when your website loads. They can scroll, click on the website, watch videos, and click on other pages (inside and outside of your website).
4647

47-
These kinds of requests need to be collected via the client side. To support this we have created a JavaScript that collects a lot of data, and it is also possible to extend this with your events.
48+
These kinds of requests need to be collected via the client side. To support this we have created a JavaScript that collects a lot of data, and extending this with your own events is possible.
4849

4950
### uMarketingSuite.analytics.js
5051

5152
If you install the package you will find this JavaScript file in the folder /Assets/uMarketingSuite/scripts/.
5253

5354
This JavaScript collects the following data for you:
5455

55-
- The maximum scroll depth as a percentage of the whole page and in absolute pixels
56-
- The links you have clicked and at the moment you have clicked these
57-
- The time you have been 'engaged' on the page. We track the time that you are actively using the page. We see whether you are scrolling, moving your cursor, or typing. As long as you are doing that we track the time. As soon as you do not anything of the above we stop the timer until you start doing 'stuff' again. So if you've opened a page, but you went away for a cup of coffee for ten minutes this time will still be less than a minute probably. Also if you've opened the page in a tab for example, but you are using another website at the moment, we will not count that time. We stop measuring time as soon as you haven't done anything for 5 seconds.
56+
* The maximum scroll depth as a percentage of the whole page and in absolute pixels
57+
* The links you have clicked and at the moment you have clicked these
58+
* The time you have been **engaged** on the page. 
59+
60+
61+
62+
We track the time that you are actively using the page. We see whether you are scrolling, moving your cursor, or typing. As long as you are doing that we track the time. 
5863

59-
To enable these events you will need to load the file /Assets/uMarketingSuite/scripts/uMarketingSuite.analytics.js at the end of your page.
64+
As soon as you do not do anything of the above we stop the timer until you start doing something again. If you have opened a page but went away for a cup of coffee for ten minutes this time will still be less than a minute likely. 
6065

61-
{% code overflow="wrap" lineNumbers="false" %}
66+
Also if you have opened the page in a tab for example, but you are using another website at the moment, we will not count that time. We stop measuring time as soon as you have not done anything for 5 seconds.
67+
68+
You need to load the file at the end of your page to enable these events.
69+
70+
{% code lineNumbers="true" %}
6271
```Html
6372
<script src="/Assets/uMarketingSuite/Scripts/uMarketingSuite.analytics.js"></script>
6473
```
6574
{% endcode %}
6675

67-
Client-side events is collected and sent to the server and stored in-memory when Visitors exits the page or close the tab/browser .
76+
Client-side events are collected and sent to the server and stored in memory when visitors exit the page or close the tab/browser.
6877

6978
### Automatic script
7079

71-
Looking in the source code of your website you will see one line of code that is automatically inserted by Umbraco uMS. It probably looks like something like this:
80+
Looking at your website source code you will see a line of code automatically inserted by Umbraco uMS. It most likely looks like something like this:
7281

73-
{% code lineNumbers="false" %}
82+
{% code lineNumbers="true" %}
7483
```Html
7584
<script>typeof uMarketingSuite!=="undefined"&&uMarketingSuite.analytics&&uMarketingSuite.analytics.init("XXXXXX-YYY-ZZZZ-1111-222222222")</script>
7685
```
@@ -80,20 +89,20 @@ This snippet of code ensures loading the uMarketingSuite.analytics.js-file, the
8089

8190
### Creating custom events
8291

83-
It is also possible to push your own events to the Umbraco uMS. It work 80% the same as [Google Analytics Event Measurement](https://developers.google.com/analytics/devguides/collection/analyticsjs/events). Read more about custom events in the [Create your own events](/analytics/clientside-events-and-additional-javascript-files/create-your-own-events/) article.
92+
It is also possible to push your own events to the Umbraco uMS. It works 80% the same as [Google Analytics Event Measurement](https://developers.google.com/analytics/devguides/collection/analyticsjs/events). Read more about custom events in the [Create your own events](../../../../../analytics/clientside-events-and-additional-javascript-files/create-your-own-events/) article.
8493

8594
### Google Analytics Bridging library
8695

8796
There is a chance that you've already implemented all kinds of events via Google Analytics with their syntax:
8897

89-
- ga('send','event',[eventCategory],[eventAction],[eventLabel],[eventValue],[fieldsObject]);
98+
* `ga('send','event',[eventCategory],[eventAction],[eventLabel],[eventValue],[fieldsObject]);`
9099

91100
If that is the case you can include a bridging library we created. This bridging library ensures that all custom events sent to Google Analytics are also sent to Umbraco uMS. These events will now be sent to both systems.
92101

93-
The only thing you will need to do is include the script *\Assets\uMarketingSuite\Scripts\uMarketingSuite.analytics.ga-bridge.js* somewhere on your page:
102+
The only thing you will need to do is include the script _\Assets\uMarketingSuite\Scripts\uMarketingSuite.analytics.ga-bridge.js_ somewhere on your page:
94103

95-
{% code lineNumbers="false" %}
104+
{% code lineNumbers="true" %}
96105
```Html
97106
<script src="/Assets/uMarketingSuite/Scripts/uMarketingSuite.analytics.ga-bridge.js"></script>
98107
```
99-
{% endcode %}
108+
{% endcode %}

0 commit comments

Comments
 (0)