Install website tracking
How to install website tracking using available plugins, or inserting tracking code snippets from the JS or PHP tracking libraries.
You can install website tracking by using the available Moosend plugins or by inserting the tracking code snippets into specific sections of your website. If you have a custom installation or if your favorite platform is not available on our plugin list, you can choose to install the JS or PHP tracking library.
Before you begin installing website tracking, ensure that you have added your website to your Moosend account.
Install website tracking using a plugin
Moosend supports website tracking plugins that let you track the website behavior of your visitors, ghost users, and logged-in users.
To install website tracking using a plugin:
On the menu bar, click More > Websites.
Click the URL of the website that you want to track.
On the Connect your website page, you can see your Website domain and website ID.
Click Install connection script.
Navigate to the plugin that applies to your website and click Install.
Follow the procedure to install the plugin.
Install website tracking using the JS tracking library
If your website requires a JS tracking library, you can install the website JS tracking library by using our code snippets. You can copy and paste the appropriate code snippets into your website HEAD
tag.
Important
Make sure you replace any placeholder website ID, website, email address, item code, price, and product details in the code snippets with actual information.
To install website tracking using the JS tracking library:
On the menu bar, click More > Websites.
Click the URL of the website you want to track.
On the Connect your website page, you can see your Website domain and Your website id.
Click Install connection script.
Navigate to Custom installation and click Install.
Click </> Copy to copy the script for loading and initializing the tracker:
<script> //load TrackerJS !function(t,n,e,o,a){function d(t){var n=~~(Date.now()/3e5),o=document.createElement(e);o.async=!0,o.src=t+"?ts="+n;var a=document.getElementsByTagName(e)[0];a.parentNode.insertBefore(o,a)}t.MooTrackerObject=a,t[a]=t[a]||function(){return t[a].q?void t[a].q.push(arguments):void(t[a].q=[arguments])},window.attachEvent?window.attachEvent("onload",d.bind(this,o)):window.addEventListener("load",d.bind(this,o),!1)}(window,document,"script","//cdn.stat-track.com/statics/moosend-tracking.min.js","mootrack"); //tracker has to be initialized otherwise it will generate warnings and wont sendtracking events mootrack('init', 'Paste your website ID here'); </script>
To track different types of information, paste the corresponding code:
To identify visitors:
// identify with email mootrack('identify', 'john@doe.com'); // identify with email and name // commented out as you need to choose one of these calls only //mootrack('identify', 'john@doe.com', 'John Doe');
To track page view events:
// track a view of the current page mootrack('trackPageView');
To track an item added to a cart:
// mandatory - a unique code for the product, like its SKU var itemCode = 'COW-T-SHIRT'; // mandatory - the name / title of this product var itemName = 'Cow T-Shirt'; // mandatory - the image url of this product var itemImage = 'http://your.store/product-color-blue.jpg'; // mandatory - the price of this product var itemPrice = 12.02; // mandatory - the url to get to the relevant product page var itemUrl = 'http://your.store/product-101'; // mandatory var itemQuantity = 2; // mandatory - the total price for purchasing the given quantity of this product var itemTotalPrice = 24.04; // optional - the category of this product var itemCategory = 'T-Shirts'; // optional - the manufacturer, brand name or company / owner of this product (if any) var itemManufacturer = 'Acme Co'; // optional - the supplier of this product (if any) var itemSupplier = 'Supplier Co'; // you can add custom properties and later use them in segmentations or automations // Tracking add to cart events with mandatory arguments mootrack('trackAddToOrder', itemCode, itemPrice, itemUrl, itemQuantity, itemTotalPrice); // Tracking add to cart events with mandatory arguments + optional mootrack('trackAddToOrder', itemCode, itemPrice, itemUrl, itemQuantity, itemTotalPrice, itemName, itemImage);
To track order completed events:
// send order completed events var product1 = { // mandatory - a unique code for the product, like its SKU itemCode: 'COW-T-SHIRT', // mandatory - the name / title of this product itemName: 'Cow T-Shirt', // mandatory - the image url of this product itemImage: 'http://your.store/product-color-blue.jpg', // mandatory - the price of this product itemPrice: 12.02, // mandatory - the url to get to the relevant product page itemUrl: 'http://your.store/product-101', // mandatory itemQuantity: 2, // mandatory - the total price for purchasing the given quantity of this product itemTotalPrice: 24.04, // optional - the category of this product itemCategory: 'T-Shirts', // optional - the manufacturer, brand name or company / owner of this product (if any) itemManufacturer: 'Acme Co', // optional - the supplier of this product (if any) itemSupplier: 'Supplier Co', // you can add custom properties and later use them in segmentations or automations color: 'Red', // You can track things like the color size: 'XXL' // or the size of the t-shirt in this case }; // Products should be an array with an object like product. var products = [product1, product2, ....]; mootrack('trackOrderCompleted', products);
To track product view events:
var product1 = { // mandatory - a unique code for the product, like its SKU itemCode: 'COW-T-SHIRT', // mandatory - the name / title of this product itemName: 'Cow T-Shirt', // mandatory - the image url of this product itemImage: 'http://your.store/product-color-blue.jpg', // mandatory - the price of this product itemPrice: 12.02, // mandatory - the url to get to the relevant product page itemUrl: 'http://your.store/product-101', // mandatory itemQuantity: 2, // mandatory - the total price for purchasing the given quantity of this product itemTotalPrice: 24.04, // optional - the category of this product itemCategory: 'T-Shirts', // optional - the manufacturer, brand name or company / owner of this product (if any) itemManufacturer: 'Acme Co', // optional - the supplier of this product (if any) itemSupplier: 'Supplier Co', // you can add custom properties and later use them in segmentations or automations color: 'Red', // You can track things like the color size: 'XXL' // or the size of the t-shirt in this case }; // Product should be sent back as an array with an object which includes the product above var productInfo = [{ product: product1 }]; mootrack('PAGE_VIEWED', productInfo);
To track a custom event relevant to your business:
You can use a single line of tracking code. For example, if you want to track an event when a video is played and its properties, you can use a code like the following:
mootrack('Video Played', { "Video length": 123, "id": "h17gQr0" });
Install website tracking using the PHP tracking library
If your website requires a PHP tracking library, you can install website tracking by using our code snippets.
Important
Make sure you replace any placeholder website ID, website, email address, item code, price, and product details in the code snippets with actual information.
To install website tracking using the PHP tracking library:
Add a local, per-project dependency to your project using Composer:
composer require sitecoresend/website-tracking
Create an instance of the tracker and perform initialization. The
init
phase deals with some cookies that determine if current user is a new visitor or a returned visitor.<?php $siteId = 'Paste your website ID here'; $trackerFactory = new SitecoreSend\TrackerFactory(); $tracker = $trackerFactory->create($siteId); $tracker->init($siteId);
To track different types of information, paste the corresponding code:
To identify visitors:
<?php $tracker->identify('some@mail.com'); // identify with email and name // commented out as you need to choose one of these calls only // $tracker->identify('john@doe.com', 'John Doe'); // You can also check if a user is already identified $tracker->isIdentified('john@doe.com'); // returns a boolean
To track page view events:
<?php $tracker->pageView('https://example.com');
To track an item added to a cart:
<?php // mandatory - a unique code for the product, for example, it's SKU $itemCode = 'COW-T-SHIRT'; // mandatory - the price of the product $itemPrice = 12.02; // mandatory - the URL to get to the relevant product page $itemUrl = 'http://your.store/product-101'; // mandatory $itemQuantity = 2; // mandatory - the total price for purchasing the given quantity of this product $itemTotalPrice = 24.04; // mandatory - the name / title of this product $itemName = 'Cow T-Shirt'; // mandatory // mandatory - the image URL of this product $itemImage = 'http://your.store/product-color-blue.jpg'; // optional - the category of this product $itemCategory = 'T-Shirts'; // optional - the manufacturer, brand name or company / owner of this product (if any) $itemManufacturer = 'Acme Co'; // you can add custom properties and use them later on in segmentations or automations // You can track things like the category or the manufacturer of the t-shirt in this case // Tracking add to cart events with mandatory arguments $tracker->addToOrder($itemCode, $itemPrice, $itemUrl, $itemQuantity); // Tracking add to cart events with mandatory arguments + optional $tracker->addToOrder($itemCode, $itemPrice, $itemUrl, $itemQuantity, $itemTotalPrice, $itemName, $itemImage);
To track order completed events:
<?php // mandatory - a unique code for the product, for example, it's SKU $itemCode = 'COW-T-SHIRT'; // mandatory - the price of the product $itemPrice = 12.02; // mandatory - the URL to get to the relevant product page $itemUrl = 'http://your.store/product-101'; // mandatory $itemQuantity = 2; // mandatory - the total price for purchasing the given quantity of this product $itemTotalPrice = 24.04; // mandatory - the name / title of this product $itemName = 'Cow T-Shirt'; // mandatory - the image URL of this product $itemImage = 'http://your.store/product-color-blue.jpg', // optional - the category of this product $itemCategory = 'T-Shirts'; // optional - the manufacturer, brand name or company / owner of this product (if any) $itemManufacturer = 'Acme Co'; // You can track things like the category or the manufacturer of the t-shirt in this case //order completed $order = $tracker->createOrder(); $order->addProduct($itemCode, $itemPrice, $itemUrl, $itemQuantity, $itemTotalPrice, $itemName, $itemImage); //add as many products as you want before tracking and order completed event $order->addProduct($itemCode, $itemPrice, $itemUrl, $itemQuantity, $itemTotalPrice, $itemName, $itemImage); $tracker->orderCompleted($order);
To track product view events:
<?php $properties = array( array( "product" => array( "itemCode" => "COW-T-SHIRT", "itemPrice" => 12.02, "itemUrl" => "http://your.store/product-101", "itemQuantity" => 2, "itemTotal" => 24.04, "itemImage" => "http://your.store/product-color-blue.jpg", "itemName" => "Cow T-Shirt", "itemDescription" => "Some Product Description", // optional - the category of this product "itemCategory" => "T-Shirts", // optional - the manufacturer, brand name or company / owner of this product (if any) "itemManufacturer" => "Acme Co" ) ) ); $tracker->pageView('https://example.com', $properties);