
End-to-End Analytics: How It Benefits Your Business. Interactive Example Inside
I remember a time, somewhere in the late 2010s, when end-to-end analytics was at the peak of its popularity. New services for building end-to-end analytics were popping up like mushrooms after the rain. Some of them even stayed on the market and became known for the quality of their services. Subjectively, these services also contributed to the idea that end-to-end analytics is something complex, almost unreachable, and that it’s impossible to build it without third-party platforms.
Now we’re in the mid-2020s, at the time of writing this article, and the hype around such services has long faded. To me, this makes sense – in their attempt to offer a “one-click” solution, they are forced to standardize their approach. Of course, developers of such platforms aim to process data from the most popular systems – ad accounts, analytics tools, CRMs, etc. But they can never cover them all. More importantly, they can’t adapt to the nuances of how each business operates, especially when it comes to CRMs – even the most common ones – if your business uses them in a way that differs from the “standard.” In the worst cases, I’ve seen sales teams of such services trying to force clients to change the way they manage their CRM to fit their platform. Naturally, it’s easier for them to make you adapt your processes to fit their system because changing how things work on their end for the sake of one single client is an inefficient use of their resources. That’s why they remain relatively templated and are only suitable for a “templated” business. But a “templated” business rarely lives long – if you don’t stand out from your competitors, what’s the point of your existence? Rhetorical question.
A business is a “living organism” that adapts to its environment. Analytics for a business must be just as adaptive, otherwise it’s useless.
And one last introductory thought before we move to the core: I don’t want you to think end-to-end analytics is something super simple – either in terms of implementation or analysis. From experience, when a client decides to build end-to-end analytics, we often discover certain “gaps” in their business processes. Analytics sheds light on these gaps. This is the difference between a templated approach and a custom one: templated forces you to adapt to the system, while custom improves your business processes. The GIGO principle is more relevant here than ever – garbage in, garbage out. It may slow down the setup, but ultimately this path not only solves the direct challenges end-to-end analytics is meant for – it also improves your business processes as a kind of “side effect” of the journey.
True end-to-end analytics can improve your company’s business processes even before it exists in the form of a dashboard.
So, what are we going to talk about:
What is End-to-End Analytics and What’s Its Purpose
The best way to define end-to-end analytics is through its core purpose. It answers the global question: “Are our investments profitable?”
Its role is to show you – whether you’re a business owner, marketer, or anyone concerned with ROI – where your money went and how much profit you earned as a result.
That’s the big picture, but not the only one. End-to-end analytics should also reveal growth opportunities – where investments are inefficient, what needs optimization, and where you should invest more because there's a high chance of increasing revenue.
How often do you see marketers optimizing campaigns based on leads? The problem is, “lead” can mean different things to different people. Most often, it’s associated with form submissions. Personally, I consider leads to include not just form submissions but even product orders made through the site – what many already call “purchases.” But even if a purchase is paid online right away, it doesn't mean the money is already in the company’s account. The order still needs to be delivered and accepted by the customer, and not returned. So, a website order ≠ revenue for the business.
Also, I consider phone calls to be leads too. While forms and orders are relatively easy to track (hopefully you’re already doing this), the importance of call tracking is often underestimated. And the same issue applies: even if you’re tracking calls, if you judge ad effectiveness by the number of calls alone, you’re missing the full picture. A call is not income.
I believe you have often come across the approach of measuring the success of marketing activities using leads and conversion rates. But by now, you’ve likely understood what I’m getting at — leads do not equal profit. A marketing campaign might show a high lead conversion rate, but at the same time be unprofitable. And if you don’t know this, you may continue investing your budget into an ineffective campaign.
End-to-end analytics connects total costs and compares them with revenue across marketing activities to show which ones are profitable and which ones aren’t.
And the goal of this article is to give you a complete breakdown of the nuances and technical details of building such analytics, along with an interactive report example. So if you’re ready to dive into the details, keep reading. Or if you’d rather try out the result first, the link to the dashboard is right here – you can always return and read how it was made.
What You Need to Build It
At a high level, you’ll need three things: data on expenses, revenue data, source tracking for both.
Expenses include your marketing budget: ad spending, SEO, blogger partnerships, guest posts, etc. Also, any services you use in marketing – like email platforms or call tracking tools.
You should also include the cost of delivered goods in your expenses — cost of goods sold plus delivery costs, various commissions, and so on. Usually, this includes variable costs, meaning those that change depending on the number of sales. The “maximum program” is to also include operational expenses — in that case, you can calculate net profit. However, implementing such a program often involves certain difficulties and may irrationally delay the process of building a full-funnel analytics system, postponing your ability to make data-driven decisions. Here, you need to evaluate how necessary it is to invest resources into calculating net profit. In many cases, calculating gross profit is enough to make informed decisions.
The second component — revenue — is the total amount of money you receive from your customers for the products and/or services they purchased. Usually, this data is stored in your CRM, website admin panel, payment services, and/or internal database.
To build full-funnel analytics, it's essential to consolidate the data into a centralized storage for further processing and transferring into visualization tools. In our projects, we use BigQuery, which is part of the Google Cloud Platform. Among the main advantages of this approach are the following:
- Native integration with Google services — exporting data from Google Analytics, Google Ads, Merchant Center, YouTube, and others can be set up very quickly.
- Convenient API — allows you to collect data from any other system that has its own API.
- No need to manage the database.
- Easy integration with Power BI — a system for building business analytics of any complexity.
If we visualize the data structure we usually build, it would look approximately like this:

And the third essential component is the information about the sources of both costs and revenue. When it comes to marketing expenses, things are relatively simple — the business usually “knows” how much it invests and where. But with revenue sources, things get a bit trickier. To determine the source of an order, you can, for example, set up the transmission of order data into Google Analytics and then match the source data using the order number — but this is a very imperfect method. Google Analytics can lose a portion of data (20–30%) for various reasons — ad blockers, poor internet connection on the user's side preventing the GA code from loading, etc. That’s why in our projects, we implement data collection on order and lead sources directly into the CRM or admin panel. This allows us to have data about sources independent of GA. As for determining call sources, that’s the job of call tracking — and for that, it’s enough to collect this data into BigQuery.
But sources are not always that simple — in my experience, this is often where the biggest challenges arise, and they’re mostly related to the human factor. It’s not hard to determine the order source and record it in the CRM. The hard part is ensuring that everyone who deals with traffic correctly tags links with UTM parameters. This is one of those many process improvement points that full-funnel analytics impacts first and foremost.
It is impossible to build full-funnel analytics without proper UTM tagging!
You can have all the data collection processes in place, but if the specialists buying traffic for the website don’t tag their links, all your efforts will be in vain. You, as the business owner or a C-level executive — basically the person interested in accurate analytics — need to organize a tagging guide for everyone who deals with traffic and communicate to them the critical need to follow it. And everyone working directly with that traffic should also be interested in doing this, because full-funnel analytics can reveal far more useful insights than any ad platform alone.
The second point of process improvement is correcting the work of the sales team. Often, while building a full-funnel system, even when UTM tagging is set up correctly and call sources are being tracked, we notice that some orders appear with an “unknown” source. In reality, these are orders placed outside the website and entered into the CRM manually by sales reps during their conversations with clients. And quite often, it turns out that the company has internal regulations requiring sales reps to assign a source value for such orders in the CRM — but in practice, this isn’t always followed. Full-funnel analytics highlights such situations very clearly — and “motivates” the team to fix them.
Choosing an Attribution Model
In addition to collecting the necessary data and setting up internal processes, one strategically important task remains — choosing the attribution model.
An attribution model is a set of rules for distributing the value of a sale among the sources that contributed to acquiring it. Let me give you a simple example. A potential customer searches for a product, sees your ad, visits the website, looks through the details, and decides not to buy right away but to think about it. However, they remember the name of your store. After some time, they decide to make a purchase, type the store name into search, click on the organic result, and place an order worth 1000 UAH.

The attribution model determines how to split that 1000 UAH between the ad and the organic source. There are many models available, and you're not limited to only predefined ones — you can create your own. Here are four examples:
- First click – the entire value of the sale is assigned to the first source that brought the customer. In this example, 1000 UAH would be attributed to the ad.
- Last click – the opposite model. The value goes to the last source. In this example, the 1000 UAH would be attributed to the organic search.
- Linear – the value is distributed evenly across all sources involved in the acquisition. In this example, 500 UAH would go to the ad, and the remaining 500 UAH to the organic source.

- Last Non-Direct Click – this is the most “popular” model thanks to the popularity of Google Analytics Universal, where it was the default. To illustrate it, let’s expand the previous example: the customer visits your site a second time via organic search but still doesn’t make a purchase. Later, they come back through a direct visit (typing the website address into the browser) and finally place an order. In this case, the value of the order is attributed to the organic source, because it was the last known (non-direct) source.
It’s also worth mentioning the data-driven attribution model. This model uses machine learning algorithms to determine the impact of each source in the conversion path. Here’s the documentation, but essentially it’s a “black box.”

You just have to trust the algorithm if you choose this model. Based on our team’s observations: while this model is used by default for GA4 source parameters whose names do not start with “First User” or “Session,” it rarely differs significantly from the last non-direct click model when there’s a small amount of data. However, when you have sufficient data, this model can offer real benefits — unlike the others, it considers the contribution of every source in the chain and helps you avoid missing important insights. If you want to evaluate whether this model is right for your case, Google Analytics can help. Go to the Advertising -> Attribution models, where you can compare how the value assignment changes between the last non-direct click and data-driven models.

I hope my simple example helped demonstrate that even a 1,000 UAH transaction can be distributed across sources in very different ways depending on which attribution model you choose. If your customers typically convert right away, one model might be enough for your analysis. However, if your customer journey usually includes multiple touchpoints from different sources, it’s essential to be thoughtful in your choice of attribution model. One model may not be sufficient to give you a full picture of how your marketing activities impact final revenue.
That said, analyzing data across three or more attribution models is no longer the task of a standard end-to-end (or "full-funnel") report. It becomes a separate report entirely, as this is a whole different story.
Report Example
We’ve now reached the point where we look at what end-to-end analytics can actually look like. Of course, I can’t stop you from jumping straight into the report and trying to make sense of it on your own — but I don’t recommend doing that right away. A report like this should be presented to the end user. Even the simplest report benefits from a walkthrough by the analyst who built it. That demo helps users get familiar with the report and makes data interpretation much easier.
In our case, the report is anything but simple. So I strongly encourage you to keep reading — this next section is my walkthrough of what the report can do.

The link to the report opens in a new tab. You can view the report here.
It’s best to view it from a desktop device.
Although end-to-end analytics is primarily about the relationship between costs and revenue, it can also answer a number of other business questions. The report presented here is just one example. In reality, each of our end-to-end reports looks different because we always tailor the setup to the specific needs, requirements, and characteristics of each business. So while viewing the report, you might find yourself thinking things like “this part would be super useful for me” or “I would change this section, something else is more important for me.” The main message I want to convey is that this is an example, and at the same time, everything can be adapted to your particular needs.
Report Structure
The report consists of three tabs: Overview, First Source, and Last Non-Direct.
The Overview tab shows trends of key metrics as well as the top revenue sources based on two attribution models – first source and last non-direct source.
First-touch attribution aggregates data by the source of the customer. This means that all metrics are calculated for the source and channel that brought in the new customer. So, if a customer first placed an order after coming from facebook / cpc
, and then made additional purchases from other sources, all of their orders will be attributed to facebook / cpc
.
Last non-direct attribution aggregates data by the source of the specific order. So continuing the same example, if the customer places a second order coming from google / organic
, the order attribution will look like this:
facebook / cpc
– 1 order (the first one)google / organic
– 1 order (the second one)
This approach, which includes data across two attribution models, helps you understand which traffic sources are effective at acquiring new customers and which ones drive repeat purchases. In our case, the first-touch model is not entirely “standard” — it is customized for a specific business. We consider the first source to be the one that was active at the time of the first purchase. An alternative method is to define the first source as the one that brought a potential customer to the website for the first time.
For businesses with long sales cycles, this second approach can help identify traffic sources that introduce potential customers to your brand, even if they don’t convert right away. And for such businesses, relying on just one attribution model can actually be harmful.
For example, if you're buying a lot of traffic from Facebook and you see poor conversion rates, you might decide it's ineffective. But in reality, Facebook may perform poorly as the last touchpoint before a purchase, yet be excellent at attracting people who later convert through another channel. Without first-touch attribution data — the very first source that brought a user to your site — you might end up turning off Facebook ads, thinking they are unprofitable, which could lead to an overall drop in sales. That’s because Facebook was an effective first-touch channel — and you simply didn’t know it.
By the way, if you are a fan of the data-driven model, I have good news for you: there are no technical limitations to implementing such a model. The most popular approaches include the Shapley value (which is believed to be the basis of attribution in GA4) and Markov chains. So yes, it is entirely possible to build end-to-end analytics using these models. In our case, we used a more classic approach.
“Overview” Tab
The first section covers the most important metrics – revenue, expenses, and the profit portion represented as gross margin. Below that, we can trace the trends in these indicators and quickly see that in the last four months of 2024, our margin declined, even though we consistently increased both our expenses and revenue, reaching a peak in both during Black Friday month. The critical gross margin threshold for this business is 35%. And although the margin dipped during this period, we still stayed in the green overall – the drop was only down to 41%.
Please note that the gross margin chart in the screenshot below does not start at 0, but at 40%. Typically, charts should begin at 0. However, deviations from this rule are acceptable if they help better emphasize important differences. This is exactly such a case – if the chart had started at 0, the line would appear almost flat, and the fluctuations in this critical metric would be barely noticeable. Meanwhile, the dashed line represents the average value over the selected period, and when filtering the report, it helps quickly understand the relative trend compared to the average.

Still, the decline is unpleasant, so we would like to understand the reasons behind it. Let’s move to the second part of this dashboard. Here, we see data on gross margin and revenue for the top 10 first and last non-direct sources. These are the sources that generate the majority of revenue. And thanks to conditional formatting, we can immediately spot the orange-highlighted margins that are below our KPIs – meaning these sources are unprofitable. Among them, the most unprofitable is facebook / cpc
, both as the first and the last non-direct source – its margin during the selected period was only around 12–13%.
If we now look at the bar chart at the bottom, which shows advertising spend by source, it’s instantly clear that Facebook holds the largest share – 37%. Moreover, we even increased spending on it starting from September, which is exactly when the margin started to decline.

A conclusion after just 10 minutes of analysis – facebook / cpc
is not worth such significant attention and investment. It would be better to redirect part of its budget to google / cpc
, which leads in terms of revenue share and has a margin nearly four times higher.
Of course, there are many more valuable insights here. I encourage you to explore them on your own :)
The report is fully interactive. Its visuals can filter one another. For example, click on the first-touch source google / cpc
(1), and you will quickly see on the chart on the left (2) that its margin also declined and even fell slightly below the average (shown as a dashed line) in November. In addition, on the right side, you can note that google / cpc
generated only 40M as the last non-direct source (3). For the rest of the orders, it served as the first source, while repeat purchases were made through several others, including facebook / cpc
, which in this case had a very strong margin – 64%. At the same time, we are looking at the exact same period, so the difference is significant – for facebook / cpc
as a first-touch source, the margin was 12%, but as a source of repeat purchases – it reached 64% in this case. Perhaps it makes sense to ramp up remarketing on Facebook – what do you think?

Of course, cross-filtering between visuals is a handy feature, but don’t forget that at the top of the dashboard you also have filters that allow you to narrow down the data more purposefully. Next to it, there’s a date range filter with the ability to switch between presets (predefined periods) or choose your own custom one.
Finally, if something in the report is unclear to you, click on the small “i” icon in the top right corner to view additional information about the dashboard.

Tab: “First Source”
The high-level goal of this dashboard is to answer the question: “How well are we acquiring new customers?”
Just like on the overview tab, the dashboard immediately directs your attention to what matters most — your KPIs, only now in more detail. Costs are now shown separately — cost of goods sold and advertising budget. Below that, you can also see a comparison of metrics with the previous period — the previous period's value and the percentage difference. As a reminder, if you have any questions about the dashboard while using it, be sure to check the “i” icon in the top right corner. It may have the answers you’re looking for.

Below the KPIs, the dashboard shows us two key things: first, a ranking of sources based on revenue, along with a comparison to the previous period. Second, it shows the ratio of new vs. returning customers — that is, those who made their first purchase before the selected period and are now making repeat purchases. Notably, with a slight lead, google / organic
and instagram / social
convert best for first-time purchases — and if that was part of our strategy, then we’re heading in the right direction.

Further down, there’s a chart showing the trend of a selected metric alongside the trend from the previous period, represented with a dashed line. You can choose which metric to display using the buttons below the chart. And don’t forget about cross-filtering. Clicking on any element in a different visual will quickly show you the trend for a specific source or ad campaign.

As for advertising campaigns — their data can be found further to the right. The scatter plot will help you quickly identify underperformers among the top 15 campaigns that spent the most money. These will always appear in the bottom right corner, where you'll see campaigns with the highest spend, the fewest customers acquired, and, as a result, the highest cost per acquisition. On the other hand, top performers will be in the upper left corner — don’t hesitate to invest more in them. In our case, the correlation is fairly consistent — the more we invest in a campaign, the more customers it brings in.
Next to it is a table listing all campaigns. Here you can see how spending has changed compared to the previous period, as well as the number of new customers acquired, also with a comparison. The orange color highlights campaigns where you are spending faster than you are acquiring new customers.

Clicking on any element in either of these two visuals will display specific data for that campaign in the KPI section on the left, and at the bottom — the dynamics of its main performance metrics. Let’s take a closer look.
Campaign 1527 looks very suspicious. Clicking on it, I quickly realize it was launched not long ago (2 months ago). It has already spent quite a bit, but hasn’t brought in a single customer. “How long can we keep pouring budget into this?!” — you might ask, and I would fully agree :)

Finally, at the bottom, there’s a detailed matrix table with additional metrics. It’s called a matrix because it expands to show more data when you click the plus icon at the start of a row. In this case, you’ll see even more details for each campaign. By the way, something went a bit wrong with influencer advertising on YouTube, didn’t you notice?

“Last Non-Direct” Tab
The final tab — last in order but certainly not in importance — shows which sources contribute to repeat purchases in particular and, more broadly, where your customers are coming from to make their purchases. In other words, it helps you understand where you need to be “in the right place at the right time.”
Visually, this dashboard looks similar to the previous one — and that’s because the entire report is consistent in design. However, the metrics here are different and tailored specifically to this attribution model. The KPIs turned out to be so relevant that there was no need to change them, so we’ve kept them as is. Below that, you’ll find the breakdown by last non-direct source — including total revenue compared to the previous period, as well as how much revenue came from new customers and those who made repeat purchases during the selected timeframe. As we noticed from the overview tab, facebook / cpc
performs slightly better than other major sources in driving repeat purchases.

Further down, you’ll see a familiar graph, now featuring “new” metrics. Here, you can analyze trends in advertising spend and gross profit separately, among other things.

In the advertising campaigns section, you’ll find data for the top 15 campaigns by spending, along with their ROI — the ratio of gross profit to costs. The logic remains the same: underperformers appear in the bottom right, while top performers are in the upper left. You can also filter campaigns above the chart by ROI range — profitable (ROI above 100%), break-even (between 0% and 100%), and unprofitable (below 0%). On the right, there’s a table showing spending changes from the previous period, as well as ROI with comparisons. Again, orange highlights the campaigns you should pay closer attention to. And yes, here it is again — campaign 1527 breaking my heart, now as a campaign that didn’t result in any sales even as the final step in the chain... Better redirect its budget to campaign 1410 — now that’s what growth looks like, keep it up!

Finally, a matrix displays additional useful data — including the number of customers, total orders, average order value, and overall purchase frequency — broken down by source, with the ability to drill down into specific advertising campaigns.
Final Thoughts
John Wanamaker, often referred to as a “marketing pioneer,” is credited with the famous quote: “Half the money I spend on advertising is wasted; the trouble is I don’t know which half.”
He lived in an era when marketing attribution and end-to-end analytics weren’t yet mainstream (1838–1922). Had they been, he would have known exactly which half of his budget was being wasted.
Yes, the path to building such a report may not be an easy one — it requires time and effort to set up all the processes properly. However, I hope that after reading this article, you now understand the value you stand to gain if you decide to follow this path.
Comments