General
PowerBi Forecasting
Report available here: https://bizsparkmobiusco.sharepoint.com/:x:/s/DigitalMarketing/EdH30YbIoTlHk5cemtwhyysBsF-0D1juQErwqVWU97yKIA?e=ztWabf
- Summary
- Its important to note that if any special characters (apostrophes, commas) can break the powerbi report. So its important that you ensure the data in here is clean.
- HomeLinkd
- This needs to be updated weekly as the file is sent weekly by Clint from the contact centre.
- However it is useful to forecast a full month and then update it each week.
- Based on the head count he give us this is the formula - Head count * 0.9 * 18.5
- 0.9 - 90% which is the attendance rate
- 18.5 Amount of leads each agent needs
- Mobile Store and Best Internet
- To work out the forecast of leads you need to see what % of the leads are usable. A usable leads is different per each campaign
- Mobile Store
- Priority 1: Leads above 680
- Priority 2: Zeros
- Priority 3: High Quality Facebook Audience
- Priority 4: Premium Cell numbers
- Priority 5: 660 to 679
- Best Internet
- Priority 1: Leads above 680
- Priority 2: Zeros
- Priority 3: 660 to 679
- Priority 4: 600 to 659
- Priority 5: Unknown Leads
- At the time of writing the usable numbers being used was:
- Best Internet: 78%
- Mobile Store: 45%
- The calculation is as follows: Headcount * 0.9 * 28 * Working days / Usable Leads
- 20% of the leads come from Google and 80% come from Adwords
- Mobile Store
- To work out the forecast of leads you need to see what % of the leads are usable. A usable leads is different per each campaign
Adhoc Lead Loads - MS and BI
Overview
The digital marketing department generates leads for the Best Internet and Mobile Store campaigns. All these leads are loaded into the Connex dialler via the API. They are all loaded into a single list for each campaign.
- Connex Cluster 3 (https://ignitiongroupsa-system3.cnx1.cloud)
- Best Internet – List ID: 2400001
- Mobile Store – List ID: 4001
Towards the end of the week there are sometime lead shortages. When this occurs we need to do an ahoc load onto Connex.
These manual loads will pick up any data that didn’t make it into the dialler through API issues as well leads that we do not load as they are lower priority. The data is classified into different Priorities:
- Mobile Store
- Priority 1: Leads above 680
- Priority 2: Zeros
- Priority 3: High Quality Facebook Audience
- Priority 4: Premium Cell numbers
- Priority 5: 660 to 679
- Best Internet
- Priority 1: Leads above 680
- Priority 2: Zeros
- Priority 3: 660 to 679
- Priority 4: 600 to 659
- Priority 5: Unknown Leads
All the above priorities are safe to load. There is a “No Priority” classification that should be avoided if possible.
Please note that only when data volumes are low should you load adhoc leads. Remember that leads are being generated constantly, so overnight and during the weekend more leads will be generated and loaded into the dialler.
Loading the Data
The data is available in a PowerBi model called “Digital Marketing – New Data Export 3”. This model refreshes throughout the day. There are 2 tabs you can use, “Mobile Store Adhoc” and “Best Internet Adhoc”. There are filters that can change the data on each tab, but this is not necessary, the only filter you should use is the date filter. Filtering for data from more than 7 days ago is not recommended but can be done if there is a shortage.
- Step 1 – Export the data, and remove duplicates of MSISDN column. Ensure it is saved as a csv
- Step 2 – Log into Connex » Click A picture containing coil spring, clipart, light Description automatically generated » Load Data
- Step 3 – Select the csv file. Click next
- Step 4 – Select the relevant list from the drop down
- Step 5 – Select the template “MS Adhoc 2” (same for Best Internet and Mobile Store)
- Step 6 – NB: Select the “Duplicate Check List” slider. And click next
- Step 7 – All fields should link up as follows:
- Source Id > LeadID
- Phone Number > Msisdn
- First Name > FirstName
- Email > Email
- Security Phrase > XDSscore
- Comments > LeadSource
- Step 8: Click Next
It will take a few seconds to load. Please always remember to preform “Remove Duplicates” on Msisdn in excel and then selecting the Duplicate check list option on Connex.
Other Info
SQL dialling rules – Leads with the status NEW (New Leads), SKPPD (Skipped Leads) and ERI (Agent Error) are all fresh leads. They have not yet been allocated to an agent.
Lead Ordering – Leads should be dialled in a Security Phrase (XDS Score) Descending order. This is setup on the dialler already.
Mautic
Summary
Mautic is our internal Marketing Automation service. I believe this service will end in the next 12months once we have moved over everything to CEP
We host a version on a local server as well as on a USA server.
-
Local
- URL: https://campaign.igdigital.co.za/index.php/s/dashboard View Teams channel for usernames and passwords
-
USA
- URL: https://mautic.homelinkd.com/index.php/s/dashboard View Teams channel for usernames and passwords
Word of warning. Use the above logins instead of creating your own, or don’t access the dashboard on your own login. This can sometime cause the server to crash and Apache then needs to be restarted. The dashboard pulls a lot of data to generate the view
Forms
All our websites use Mautic to process themselves. The forms are built in Mautic and then you can export them in a few different ways. Instructions are given within Mautic when you have setup a form.
Tracking Code
Mautic can track users across assets which can be useful when viewing a visitors history on all Ignition Brands. The tracking code should be added to the footer of our websites before the closing body tag.
USA
<!-- Mautic Code -->
<script>
(function(w,d,t,u,n,a,m){w['MauticTrackingObject']=n;
w[n]=w[n]||function(){(w[n].q=w[n].q||[]).push(arguments)},a=d.createElement(t),
m=d.getElementsByTagName(t)[0];a.async=1;a.src=u;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://mautic.homelinkd.com/index.php/mtc.js','mt');
mt('send', 'pageview');
</script>
<!-- End Mautic Code -->
Local
<script>
(function(w,d,t,u,n,a,m){w['MauticTrackingObject']=n;
w[n]=w[n]||function(){(w[n].q=w[n].q||[]).push(arguments)},a=d.createElement(t),
m=d.getElementsByTagName(t)[0];a.async=1;a.src=u;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://campaign.igdigital.co.za/index.php/mtc.js','mt');
mt('send', 'pageview');
</script>
Website Cookies
In order to better track our paid media performance, we load a custom cookie onto each visitor to the website. This is to capture their initial landing page. This cookie is then included in the form when someone submits their information. Here is the standard cookie code we use.
In the header:
<!-- Cookie Code -->
<script type="text/javascript">
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+ d.toUTCString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i <ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function checkCookie() {
var user = getCookie("homelinkdland");
if (user == "") {
setCookie("homelinkdland", document.URL, 7);
} else if (user == null) {
setCookie("homelinkdland", document.URL, 7);
}
}
checkCookie();
</script>
<!-- End Cookie Code -->
Then in the footer, you need to include the below. You just need to update the form elements with what ever you have named the hidden fields in the form.
<script type="text/javascript">
{
document.getElementById('mauticform_input_homelinkdgeneral_pageurl').value = location.pathname;
document.getElementById('mauticform_input_homelinkdgeneral_pagereferrer').value = getCookie("homelinkdland");
}
</script>
Call Rail (USA Only)
Overview
Call Rail is a service that allows us to track Paid and Organic activity on the website even if the lead calls in. It does this by allocating a pool of toll free numbers to each of the brands. When a visitor comes to the website they are allocated their own toll free number (using a snippit of javascript added to each page). When that person calls in we then know how they got to the website. After a while that number is then allocated to a new user to the website.
Number Pools
We currently use about 80 Toll Free numbers per brand. This number is calculated by taking your maximum unique users per hour and dividing them by 4. Its important to check up on this periodically as if too many users are accessing the website then we are not giving each user long enough with a number and so data could be misallocated.
Individual Numbers
You also have the ability of adding individual numbers. These numbers can be used on mailer, SMS’s, facebook ads ect.
3rd Party Integrations
There are a number of Integrations, these are used to communicate results to specific platform. It is important that these are not worked on unless there is a understanding of the impact changes can have on the service. We are currently using these Integrations:
- Google Ads
- Google Analytics
- Microsoft Ads
- Webhooks
Webhooks
One of the integrations we make use of are Webhooks. When a phone call is completed a webhook on MIcrosoft flow is called and it inserts the details of a call in the lead database.
Call Flows
Call flows can be setup and linked to number pools or individual numbers. All the HomeLinkd numbers are linked to various Call Flows. All these call flows are generally the same, the only difference is the IVR introduction that is played. The general call flow is:
- Thank you for calling “Brand” message
- Sends call to Ignition Contact Centre
- If no answer after 3min send to IBEX Contact Centre
- If no answer after 3min send to Ignition Contact Centre
If the call happens outside of Ignition working times then the call will be routed to IBEX immediately after the IVR message.
Lead Flows
Current Mobile Store Lead Flow
Basic Understanding of how a lead flows into the dialler