Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion 13/umbraco-ums/README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# Umbraco uMS
# Umbraco uMS Documentation
339 changes: 176 additions & 163 deletions 13/umbraco-ums/SUMMARY.md

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/ab-testing/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# A/B Testing

A/B testing is one of the main features of the uMarketingSuite. A/B testing allows you to test your website or specific webpages in a very easy and friendly way. The uMarketingSuite supports both the novice as the experienced A/B tester.

This documentation section will help you out with A/B Testing:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# A/B test distribution algorithm

The default implemented algorithm is based and randomness. As soon as a visitor visits the website or the specific webpage with an A/B test it get randomly assigned a variant. That variant is stored alongside the visitors cookie and as long as the visitor does not delete its cookie the same A/B test variant is shown.

Because the algorithm is based on randomness the number of visitors are not exactly distributes amongst all visitors but slight difference can occur.
Expand Down
2 changes: 1 addition & 1 deletion 13/umbraco-ums/developers/ab-testing/csharp-api.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## C# API
# C# API

Note: this API is available for 1.10.0+

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Extending the algorithms

Unfortunately it is not easy at this moment to implement your own algorithm at this moment. We do want to support this in the future, but it does not have our highest priority at this moment.

If you do however think this should have a much higher priority, please [drop us a message](mailto:[email protected]?subject=I%20want%20to%20implement%20my%20own%20algorithms) and we will see what we can do for each other :)!
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/ab-testing/finish-an-ab-test.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Finish an A/B test

You can decide to finish an A/B test at any time. Normally you would end the test if it has been running long enough and you've collected enough data to gain enough confidence.

The uMarketingSuite will let you know when we've collected enough data to make the results statistically significant. We will also tell you if we haven't collected enough data:
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/ab-testing/front-end-rendering.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Front end rendering

The A/B Test will automatically be rendered in your frontend. If you've setup a "[Single page A/B test](/a-b-testing/types-of-a-b-tests/single-page-a-b-test/)" the uMarketingSuite together with Umbraco will automatically render the correct properties.

If you've setup of one of the other tests and added some CSS and JavaScript to your A/B Test we will automatically this JavaScript and CSS to your webpage.
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/ab-testing/monitor-the-ab-test.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Monitor the A/B test

When the A/B test is running it's wise to regularly check the progress of the A/B test. This can be done on the specific node (via the content app) or via the Marketing Section.

If you go the overview you will find all running tests, how long it's been running, how many visitors are included and how long the test should run to have significant relevant results.
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/ab-testing/previewing-an-ab-test.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Previewing an A/B test

There are different ways to preview your A/B Test variants. On this page we will discuss all options.

## During the setup of your new A/B Test
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Setting up the A/B test

Setting up an A/B test in uMarketingSuite is easy. No need to code, no need for any external tooling; it's all in the tool!

Starting A/B tests can be initiated in two ways:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Types of A/B tests

There a several different types of A/B tests. The uMarketingSuite currently implements three different types of tests:

- A [single page test](/a-b-testing/types-of-a-b-tests/single-page-a-b-test/) to test a specific page within Umbraco
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Document Type Test

Thanks to the unique implementation of the uMarketingSuite within Umbraco it is possible to test all pages of a specific document type. Simply select the document type(s) you want to test and the uMarketingSuite will make sure that the correct css and/or javascript will be inserted to this page.

The test type "**Document type**" can be started in the [Marketing section](/the-umarketingsuite-broad-overview/the-umarketingsuite-section/ "The uMarketingSuite section") and in the [content app](/the-umarketingsuite-broad-overview/content-apps/ "Content apps"). The type is selected in step 2 of the setup.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Multiple Pages test

The multiple pages test allows you to test multiple pages at the same time. Within Umbraco you can simply select the webpages you want to test and all these pages you can specify which type of CSS or JavaScript will be added to the specific variant. Where [the single page test](/a-b-testing/types-of-a-b-tests/single-page-a-b-test/) enables you to start testing without writing any line of code, the multiple pages test requires you to write (or copy-in) some CSS and JavaScript-code.

The test type "**Multiple pages**" can be started in the [Marketing section](unpublished-item-51de601d-1366-488a-8ad8-0b7f52c02be5) and in the [content app](/the-umarketingsuite-broad-overview/content-apps/). The type is selected in step 2 of the setup.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Single-page A/B test

The single page A/B test is one of the coolest features within the uMarketingSuite and really shows the power of the uMarketingSuite & Umbraco combination. It allows an editor to start an A/B test without a single line of code!

*Note*: To start an single page A/B Test make sure you have installed Umbraco 8.7, because the single page test can only be start on an Umbraco 8.7 or higher installation.
Expand Down
Original file line number Diff line number Diff line change
@@ -1 +1 @@
-
# Split URL test
2 changes: 1 addition & 1 deletion 13/umbraco-ums/developers/analytics/README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
-
# Analytics
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Client-side events and additional Javascript

Check warning on line 1 in 13/umbraco-ums/developers/analytics/client-side-events-and-additional-javascript-files/README.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [UmbracoDocs.Names] We prefer JavaScript over 'Javascript' Raw Output: {"message": "[UmbracoDocs.Names] We prefer JavaScript over 'Javascript'", "location": {"path": "13/umbraco-ums/developers/analytics/client-side-events-and-additional-javascript-files/README.md", "range": {"start": {"line": 1, "column": 37}}}, "severity": "WARNING"}

The uMarketingSuite helps you with some additional scripts and views you get from us.

They are all stored in the folder **/Assets/uMarketingSuite/Scripts/** and in the folder **/Views/Partials/uMarketingSuite/**.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Additional measurements with our uMS Analytics scripts

You can add the uMarketingSuite analytics JavaScript file to your website by adding the following line of code, just before the closing **</body>**-tag of your website.

<script src="/Assets/uMarketingSuite/Scripts/uMarketingSuite.analytics.js"></script>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Briding library for Google Analytics

We have included a bridging JavaScript file that will "catch" all Google Analytics event calls and send them to the uMarketingSuite as well. The purpose of the file is that if you have a running website with Google Analytics events already defined you do not have to make any changes to the code to send them to uMarketingSuite as well. The only thing you need to do is include our JavaScript bridge.

## Google Analytics 4 (GA4)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Bridging library for Google Tag Manager

If you're using Google Tag Manager on your website you can collect all the events that you're already sending to Google Tag Manager in the uMarketingSuite as well. This is setup in the same way as [classic Google Analytics](/analytics/clientside-events-and-additional-javascript-files/bridging-library-for-google-analytics/).

To include the file you should add the following code just before the closing &lt;/body&gt;-tag of your HTML:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Create your own events

You can send your own client side events to the uMarketingSuite as well, for example if somebody pushes a button.

This can be done by executing the following javascript-call that has the following syntax:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Google Analytics blocker detection

If a visitor of a website runs an Adblocker or a cookieblocker this visitor is most likely not be tracked in Google Analytics, because this domain is normally on the blocked list (at least by default). The beauty of the uMarketingSuite is that we still can track this visitor.

To make it easier for you to measure which visitors you cannot track with Google Analytics, but you can track with the uMarketingSuite we've created a simple javascript file that you can include before the closing &lt;/body&gt;-tag of your website:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Extending analytics

Data collection is central to the uMarketingSuite's Analytics feature (for obvious reasons!). Whenever a visitors requests a page on your website, we analyze the web request for relevant information and store it in the database.

But sometimes we might get it wrong, or perhaps you already have your own set of data to complement the uMarketingSuite's data set. In the following articles we will explain how to replace specific data '**extractors**', which are responsible for obtaining very specific pieces of information from a request.
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Getting the correct IP address

By default the uMarketingSuite extracts the IP address for the given request by inspecting the request's **UserHostAddress** and the **X-Forwarded-For** header. The latter is commonly used if your website is running behind a load balancer. In most common scenarios this will resolve the client's IP address correctly.

If you find that IP addresses are not resolved correctly your website might be running behind a load balancing server or another protected environment that either does not forward the original client IP address in the default **X-Forwarded-For** header or simply excludes the client IP address entirely.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Implement an IP to location provider

The uMarketingSuite Analytics provides native support for storing and reporting localization information for your incoming traffic. When we speak of localization, we refer to the ability to identify the (physical) origin of an incoming request. By design, requests sent to your website from a visitor's browser will never contain a location of origin. As the uMarketingSuite does not contain any localization information, you will have to provide your own implementation that provides this.

Most localization services, such as provided by Maxmind, use IP addresses to perform a (rough) lookup. The information is compiled into a database where lookups can be performed. However IP addresses do not contain any information regarding their (physical) origin, rather they only identify a device on the internet. Because of this the localization information for any given IP address is tracked manually and can change wildly (and sometimes regularly). We recommend either using an external service or acquiring a copy of a GeoIP database for localization lookup purposes.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Sending data to the GTM datalayer

Check failure on line 1 in 13/umbraco-ums/developers/analytics/extending-analytics/sending-data-to-the-gtm-datalayer.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [UmbracoDocs.Acronyms] 'GTM' has no definition Raw Output: {"message": "[UmbracoDocs.Acronyms] 'GTM' has no definition", "location": {"path": "13/umbraco-ums/developers/analytics/extending-analytics/sending-data-to-the-gtm-datalayer.md", "range": {"start": {"line": 1, "column": 23}}}, "severity": "ERROR"}

uMarketingSuite provides a partial view that will push variables related to A/B testing and Personalization to the Google Tag Manager data layer.

The following variables are pushed:
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/analytics/forms.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Forms

### Installing uMarketingSuite Forms Addon

Tracking Umbraco Forms submissions, you need to ensure you have [Umbraco Forms](https://umbraco.com/products/add-ons/forms/) installed with a valid license from Umbraco HQ along with installing the [uMarketingSuite Forms Addon package from Nuget](https://www.nuget.org/packages/uMarketingSuite.UmbracoForms).
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/analytics/location.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Location

The localization information is displayed under the tab Location in the Analytics section of the uMarketingSuite dashboard:

![Location tab, located under the Analytics section]()
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/analytics/scroll-heatmap.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Scroll heatmap

Curious how visitors consume you content?

In the Heatmap feature the uMarketingSuite gives a visual representation of the average scroll depth from your visitors on a specific page. This feature is only (!) available within the Analytics Content App on a specific Umbraco page.
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/analytics/types-of-clients.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Types of clients

### Version 1.21 and newer

In versions 1.21 and newer of uMarketingSuite we only track '**real**' visitors and discard any visit we determine to be from a bot. The data for bot visits is no longer stored in uMarketingSuite and thus can not be viewed in the analytics section with the bot tab for reporting.
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/analytics/videos.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Videos

The uMarketingSuite gathers video statistics for the following types of videos:

- HTML5 videos (i.e. videos provided via the &lt;video&gt; element)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# What is measured by default

If you install the uMarketingSuite we will automatically collect a lot of data for you.

Serverside the following data is tracked:
Expand Down
2 changes: 1 addition & 1 deletion 13/umbraco-ums/developers/introduction/README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
-
# Introduction
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Dataflow Pipeline

The uMarketingSuite package is all about data, data and more data. To take the most out of this data and do it in the most efficient way we have four different stages where the data goes to:

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.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Data collection

This is the first phase of the dataflow. In this stage the data is collected from the user and stored temporarily in memory.

## Serverside collection
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Data parsing

Now that the data is [persisted in the database](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-storage/) it's time for the next step. As you may record the data is stored in two 'raw' database tables. These database tables are 'just' a representation of all data we've recorded from the visitor. In this step we want to store the data in a normalized (and more efficient) way, relate this data to the data in Umbraco, and verify whether goals are reached.

## Getting the data that needs to be parsed
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Data storage

When the [data is collected](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-collection/) it is temporarily stored in memory. At some moment in time a threshold is reached and all data is stored in the database. This is down in the step 'Data storage'.

## Flushing the memory
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Reporting

Now that the data is [collected](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-collection/), [stored](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-storage/) and [parsed](/the-umarketingsuite-broad-overview/dataflow-pipeline/data-parsing/) it's finally time for the most interesting phase; browsing through the reports in the Umbraco backoffice.

The data is visualized in two parts in Umbraco:
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/introduction/performance.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Performance

We take performance serious and performance is always on top of mind when adding new features to uMarketingSuite.

Within the uMarketingSuite we have implemented several performance optimizations and there are also some configuration you can do yourself to optimize the performance of your Umbraco solution with uMarketingSuite.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# The uMS Cookie

If you visit a website that has the uMarketingSuite installed you will get a unique cookie. This cookie allows us to relate different page visits or sessions to one and the same visitor. It also gives the ability to serve always the same variant of an A/B test.

By default the uMarketingSuite cookie has the name **uMarketingSuiteAnalyticsVisitorId**. You can however give it another name via the [configuration file](/installing-umarketingsuite/configuration-options-1-x/).
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Module Permissions

Starting from version **1.13.0** it is possible to disable the individual modules of uMarketingSuite (Analytics, A/B testing, Personalization) through code based on any criteria you want. For example, you could choose to give visitors control over these settings through a cookiebar on your site. In order to do this you will have to create an implementation of the **uMarketingSuite.Business.Permissions.ModulePermissions.IModulePermissions** interface and override our default implementation which enables everything by default all the time.

This interface defines 3 methods which you will have to implement:
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/personalization/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Personalization

The personalization provided by the uMarketingSuite was built in such a way that the user is able to personalize the content or layout of any page from the Umbraco UI, without any programming skills. But no matter how hard we try to personalize personalization for you, we can never know how you like your personalization to be!

One of the most common situations for implementing your own flavour of personalization is because you want to server specific content to a (group of) user(s). In the uMarketingSuite, we identify groups of visitors through segments, which consists of a set of requirements that are to be met. This segment information is then used to customize the user's experience through Applied Personalization.
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/personalization/custom-scoring.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Custom scoring

The main two pillars of personalization that the uMarketingSuite offers is personas and customer journeys. The impact of a content page has on these can be managed on the Content Score tab in the Personalization (content) app on the top right of any page.

But sometimes you want to have more fine grained control over when something does (or doesn't) score. For example if a user places an order, the user has shifted from the customer journey step "**think**" to "**do**". This might be difficult to accomplish through the Content Scoring UI in Umbraco, but it can easily be done by code.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Implement your own segment parameters

The uMarketingSuite comes with various built-in segment parameters to build a segment, such as "**Customer Journey**" and "**Time of Day**". However, you may want to build segments with custom rules that are not part of the uMarketingSuite by default. We've got you covered; you can add your own custom segment parameters to the uMarketingSuite. Note you need at least version 1.7.0 for this functionality, which is released at the end end of 2020.

The following guide will explain how this can be done. **Note this is aimed at developers**.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Segment information

Sometimes you need more fine grained personalization for your website. For this purpose the uMarketingSuite exposes a service called the **IAnalyticsStateProvider**. This service providers access to all analytics-related information for the current request, as well as segment information. Whenever you have a need to execute custom code that is specifically tied to personalization, you can use this service.

To get started you will need an instance of a **IAnalyticsStateProvider**, which can be resolved through Dependency Injection. For example consider the following case, where we use [route hijacking](https://our.umbraco.com/documentation/reference/routing/custom-controllers) to execute custom code for our content typed called "**Home**":
Expand Down
2 changes: 1 addition & 1 deletion 13/umbraco-ums/developers/profiling/README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
-
# Profiling
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/profiling/external-profile-data.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# External Profile Data

*Note: this functionality is available starting from v1.12.0*

Your system may associate a uMarketingSuite visitor with other data that comes from some external system such as a CRM. Note uMarketingSuite does not provide a built-in way to add additional data to a profile. You can store the data in any format and in any way you want. If this external data is to be used in a custom segment you write the data access yourself in the custom segment code that you had to write to begin with.
Expand Down
2 changes: 1 addition & 1 deletion 13/umbraco-ums/developers/reporting.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
-
# Reporting
2 changes: 1 addition & 1 deletion 13/umbraco-ums/developers/settings/README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
-
# Settings
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/settings/custom-goals-scoring.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Custom goal scoring

Prior to uMarketingSuite 1.10.0 goals could only be triggered in 2 ways: pageviews and page events. Starting from 1.10.0 (which will be released towards the end of May 2021) it is possible to define Custom goals which can be triggered through code instead.

To setup Custom goals the approach is quite straightforward:
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/settings/ip-filtering.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# IP Filtering

In some cases you want to exclude the traffic from specific IP addresses. A good example is that you normally exclude your own IP address, so it doesn't have an impact on the digital Analytics reporting. Here you can specify a specific IP addresses, list of IP addresses or a regular expression.

![]()
Expand Down
2 changes: 2 additions & 0 deletions 13/umbraco-ums/developers/settings/permissions.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Permissions

In the settings of the Marketing-section you can manage on which document types these content apps are displayed, and which Umbraco user groups have access to these content apps. They can be easily managed per document type and per user group

![](/media/gbypb1w1/document-type-permissions.png)
Expand Down
Loading
Loading