zakaz.ua
Google Cloud (Big Query, Cloud Functions, Cloud Scheduler, Pub/Sub)
Python scripts
Google Analytics 4.0 Universal Analytics
Firebase
AppsFlyer
Campaign Manager 360
Tableau
zakaz.ua is a company that provides services for ordering, pickup and delivery of goods from popular retail chains. The service carries out courier delivery in 13 large cities of Ukraine, and also delivers orders throughout the country by Nova Poshta postal service. Their own IT platform allows them to quickly receive, process and deliver orders to consumers.
The last non-push non-direct click attribution model assigns conversion values only to the last channel that led to a purchase and shows which channels ultimately lead to a purchase and conversion.
zakaz.ua is not only a product delivery service for end consumers, but also a convenient platform for large retail chains (hereinafter partners), which helps to increase sales. The advantage of cooperation for them is the creation of landing pages (Landing Page TM) on the zakaz.ua subdomain.
zakaz.ua creates separate advertising offices and advertising campaigns for key partners, and therefore has many sources of information.
Usually, income indicators are stored in CRM, traffic sources are stored in analytics systems, and advertising costs are stored in advertising services.
In order to make quick decisions, it was necessary to combine data on expenses and income into a single system, set up a daily automated update of such reports, and also leave the possibility of filtering data in terms of partners.
In the case study, we will consider the works and results for March-April 2022.
Since the client's in-house team had already set up separate CRM data reports, advertising activity reports for each partner account and GA4, which combined application and site data, before the start of work, we were tasked with combining data from all sources into one dashboard and automating them.
End-to-end analytics help businesses process and analyze customer acquisition and retention performance data, track the complete user journey, and see if marketing efforts are paying off overall.
Usually, such large businesses as zakaz.ua have many data sources — therefore, they cannot do without end-to-end analytics.
Data about conversions from advertising cabinets (Google Ads, Facebook, etc.) differed from data from Google Analytics.
Different attribution models operating in advertising cabinets by default.
An attribution model is the allocation of value to the channels that led to the conversion.
Aggregate data from various reports into one and combine data on the expense and income parts in it.
Result
The ability for the client to set up calculation systems and statistics based on order statuses from internal accounting systems.
To solve the client's problem, we used data from the following systems:
We combined analytics and CRM data by order number, and expense data with analytics and CRM data by source.
To ensure regular data updates in the reports, we wrote Python scripts that ensured daily data updates from all sources engaged by the client. Regarding ad cabinets, most of them have an open API, which we used to collect information about spending.
You can use ready-made connectors to download data, but we do not do this for security reasons.
Given that they usually require a monthly usage fee, writing your own scripts helps save on end-to-end system maintenance costs.
In some cases, advertising for a group of partners was carried out from a single account. It was possible to isolate data on costs for each of the partners only by the name of the advertising campaign.
From the client's side — to standardize the names of advertising campaigns, from our side — parsing of campaign names.
Parsing is the collection and sorting of data with certain parameters.
For combining and storing data we chose BigQuery storage from Google Cloud . This solution made it possible to process large volumes of data without worrying about maintaining the server infrastructure.
The advantage of Google Cloud is integration with Google services (Google Ads and Google Analytics 4) and additional data processing capabilities. For example, for the repository, you can write a script for certain actions with the data, and the service will execute it according to the schedule.
To make it convenient for the client to analyze data for each of the partners, data filters by partners were added.
Building an attribution model was a separate challenge for us.
Conversion sources in the GA4 interface are displayed by default using the "Data-driven" attribution model, which does not provide source information in raw data. Instead, it displays the source of the individual session and the first source of the user.
An important part of the task was to take into account the influence of auxiliary channels on orders from the site. In the case of zakaz.ua, auxiliary channels are those that influence the decision to order, but are not the main source of traffic (for example, push notifications).
Solution
As part of the project, we built attribution ourselves.
On the one hand, choosing such an attribution model complicates the process of building end-to-end analytics, but one of the advantages is that it can be processed and customized according to business needs and check the rules for assigning sources.
Example
Push notifications are a useful tool for returning users to the service, but they are not a source of attracting new customers. Therefore, the rules for displaying it as a "purchase source" should differ from those that apply to other traffic sources.
In order to examine the impact of the tool on the purchase and interaction with other traffic sources, we singled it out by a specific metric and excluded it when determining the last significant purchase source.
In our experience, data from Facebook and Apple Search Ads sources can be incorrectly displayed in Firebase (and not transferred to GA4), to clarify the source of purchases from the mobile application, we involved an additional service that integrates with these advertising cabinets — AppsFlyer.
AppsFlyer is a mobile analytics platform that helps measure the effectiveness of mobile app marketing and simplifies work with large volumes of data from different promotion channels.
Since AppsFlyer recorded 2,204 purchases from the Apple Search Ads channel, while Firebase recorded only 21, we added data from the mobile analytics platform.
We built end-to-end analytics based on GA4 data, but data collection in this service was configured much later than in Universal Analytics. Therefore, by basing the distribution of data by source on GA4 alone, we were severely limited in our analysis of historical data.
To expand the options for choosing an analysis period, we downloaded historical data from Universal Analytics and combined it with GA4 data.
Client’s Business Challenge
Prior to the start of the work, media campaign reporting was created and processed manually. This significantly limited the client's ability to quickly process data and make effective marketing decisions.
Solution
We automated data collection from the CampaignManager360 service, supplemented it with metrics from DisplayVideo360 and visualized it in the Tableau BI system.
As part of web analytics work, for data visualization, we recommend that clients choose among three BI systems.
Since all the client's internal reporting was in Tableau even before the work began, the visualization tasks were closed in this BI system, and some of the visualization work was closed on the customer's side.
As a result, for zakaz.ua, we built a single analytics system with daily automated data updates, thanks to which the client can quickly make marketing decisions.
The new analytics system aggregates data from different systems: analytics systems, advertising offices, and internal accounting data. Now the client can monitor the performance of all channels, understand costs and KPIs, and optimize the budget in favor of more effective channels.
In this system, a custom attribution model is also built, which allows you to more correctly compare income and expenses for advertising activity.
We are very satisfied with the result. It was a kind of challenge, because we have many data sources, a large number of advertising offices, our own peculiarities of work. It was a big project, but we managed it together with the team of Promodo analysts. Now all the information we need is displayed in a single system with the most important parameters necessary for further development. Thank you for your involvement and constant search for new custom solutions.
Yevgen Netreba
CMO
Case studies
Check out how we help companies like yours overcome challenges and rise to the next level.
Conversion rate
Bounce rate
Work period
Traffic growth
Work period