90% of guides on end-to-end analytics are written for online stores. The logic there is simple: click → cart → payment per hour. The cycle has closed, the metrics have converged, the report is ready.
In construction, the cycle is different. Click in August → request for quotation in September → meeting in October → contract in November → shipment in batches in December-March → final payment in April. Seven months pass between the first touch and the moment revenue actually reaches the company.
Most standard analytics systems simply do not understand this cycle. And most implementations of end-to-end analytics in construction companies break down precisely on this point - the long cycle and complex revenue attribution.
Below is how to collect end-to-end analytics that works in the construction niche, and what mistakes to avoid.
How does end-to-end analytics in construction differ from e-commerce?
In short - almost everyone.
Long deal cycle
In e-commerce - hours or days. In construction - 3-12 months in the B2B segment, 1-3 months in the private sector. This means that the monthly channel performance report won’t tell you anything. August leads close in February. ROMI is calculated with a lag of six months to a year.
Several decision makers on one deal
In an online store, the decision is made by one person. In the construction niche there is a chain: the architect specifies the material in the project, the supplier enters into the estimate, the general signs the contract. Website marketing only sees one of them. Attribution is complex.
The deal does not live on the website, but in CRM and 1C
In e-commerce, the payment record sits inside the store. In construction, a website request goes into CRM, the contract is drafted in 1C, shipments go out in batches, and final payments are recorded separately. To understand real revenue per lead, you need to combine data from at least three systems.
Revenue is not one sale, but LTV
During construction, clients return. The dealer orders a batch every quarter. The developer is building several residential complexes in a row. Calculating ROMI for one trade is a mistake. A channel that has provided an “expensive” client can pay for itself in a year with repeat orders.
What is end-to-end analytics used in the construction business?
The analytics loop consists of five layers. Every layer is needed. Without any of them, the system leaks.
Layer 1. Traffic sources
What we track:
- →Paid advertising - Direct, VK, Telegram Ads, advertising in industry media
- →Organic - search results, transitions from social networks and Telegram channels
- →Direct visits - by brand, after an offline touch
- →Referral links - from partner sites, self-regulatory organizations, industry directories
- →Offline - exhibitions, printed catalogues, outdoor advertising. Connection with online via QR codes and unique UTM on printed materials
UTM tags are required on all channels. Without them, end-to-end analytics does not exist, because there is nothing to stitch the data from.
Layer 2. Entry point - website
On the site we must record everything the visitor does:
- →Filling out forms
- →Clicks on the phone (call tracking)
- →Download catalogs and specifications
- →Launching chats (Jivo, Tilda Chat, custom)
- →Subscriptions to the newsletter or Telegram channel
Each such event → goes into Yandex Metrica as a goal and at the same time into CRM as a lead with UTM tags.
Layer 3. CRM as the core of the system
This is the most painful place in the construction business. Without a properly configured CRM, end-to-end analytics is technically impossible.
What fields are required in the deal card:
- →Source (UTM-source) and campaign (UTM-campaign) - filled in automatically
- →Client region - for geographical sections
- →Client segment - private owner, dealer, developer, government customer
- →Object - name of the construction site or residential complex, if the transaction is a project
- →Decision maker - who makes the decision in this transaction
- →Stage and amount - standard
- →Competitors - with whom it compares (for qualitative analytics)
If at least half of these fields are not filled in 100%, end-to-end analytics will show a mess.
Layer 4. 1C / ERP as a source of truth for revenue
A deal in CRM can be closed with the “paid” status. But in reality this means that an advance payment of 30% has been received. The remaining 70% is after shipment, which takes three months in batches. Additional payment - even later.
In order for analytics to show real revenue, and not just prepayments, CRM must pull data from 1C: what shipments were made, for what amount, under what contracts. This is not always technically possible, but without this ROMI is considered crooked.
Layer 5. Dashboard - decision point
“Report once a month in Excel” is not end-to-end analytics. This is a rudiment. End-to-end analytics is a live dashboard that the owner and marketer visit several times a week and see:
- →How many leads, deals and revenue today for each channel
- →Where do leads flow between stages of the funnel?
- →Where are the deals stuck and who is responsible for them?
- →What is the ROMI and LTV for each customer segment?
- →Revenue forecast based on the current funnel
The dashboard can be compiled in Yandex DataLens, Power BI, Roistat or Calltouch. The main thing is not where, but that it is actually used.

3 work stacks for end-to-end analytics in the construction niche
Depending on the size of the company and the scale of marketing, there are different stacks. Here are three working options.
Budget stack: up to 30 thousand per month
Compound:
- →Yandex Metrica - accounting of traffic and goals on the site
- →amoCRM or Bitrix24 - accounting for leads and transactions
- →Metrica → CRM (native integration)
- →Google Sheets as a dashboard (via uploads and formulas)
When it’s enough: up to 5 traffic channels, up to 50 leads per month, average order value up to 500 thousand. Suitable for a small construction company or a regional player.
What will not work: take into account LTV automatically, make complex cuts by segments, see data in real time.
Average stack: 50-100 thousand per month
Compound:
- →Metrics
- →CRM (amoCRM, Bitrix24 or Salesforce)
- →Roistat or Calltouch - for end-to-end analytics and call-tracking
- →Connection to 1C via boxed integrators
When needed: 5-10 active channels, 50-300 leads per month, average order value from 500 thousand to 5 million. Suitable for most companies in the construction niche.
What we get: real ROMI by channel taking into account transactions and revenue, reports by segments, basic attribution, convenient dashboards out of the box.
Corporate stack: from 150 thousand per month
Compound:
- →Metrics
- →Corporate CRM (Bitrix24 Corporate, Salesforce, Microsoft Dynamics)
- →Calltouch or Comagic for call-tracking
- →ClickHouse as a centralized data storage
- →DataLens, Power BI or Tableau for dashboards
- →Custom integrations with 1C / ERP
When needed: federal-scale company, 300+ leads per month, dealer network, several brands in the portfolio. This is no longer “tuning”, but full-fledged data engineering.
What we will get: full attribution on any axes, custom LTV models, forecasts based on historical data, ready-made infrastructure for future AI and ML.
What metrics does a construction business really need?
In the construction niche, you don’t need all the metrics that are in the tool. We need specific ones. Here's a short list of what really influences an owner's decisions.
- →CPL by channel - with sections by region and segment. Not the average CPL across all channels is a useless number.
- →CR by funnel stages: request → meeting → proposal → contract → shipment. If one stage drops 3-5 times, there is a leak.
- →Transaction duration in days - median and average. The average cycle can be 90 days, and the median is 45. This means that half of your deals are fast, and half stick for a long time. These are different segments.
- →ROMI taking into account the term of the transaction - in construction, the standard monthly ROMI is useless. It is necessary to calculate with a minimum lag of 3-6 months.
- →Dealer LTV, or repeat sales, is especially important if you have repeat customer partners. Often a channel that looks “expensive” on the first deal pays for itself a year later with repeat orders from the same client.
Everything else is decoration. CTR, CPM, reach, ROI of individual campaigns are needed by the marketer for optimization, but we do not display them in the dashboard for the owner.

4 mistakes that cause implementations to break
Mistake 1. We launched end-to-end analytics without processes in CRM
The owner paid Roistat 200 thousand for implementation. Two months later he looks at the report - it’s a mess. Sources are not written, segments are not filled, statuses do not move.
Roistat is not to blame. It simply reflects what actually happens in CRM. If CRM is messy, the report will be messy too.
End-to-end analytics is implemented after the CRM has been put in order. Not before and not at the same time.
Mistake 2. Didn’t take into account the long cycle - evaluate the result in a month
We launched a new channel. A month later they look at the report: “The CPL is 15 thousand, there are few leads, the ROMI is negative - we are closing.”
They close in vain. In construction, the transaction cycle is often 4-6 months. A channel that has a solid CPL with no deals in the first month may end up in the black after four months. The decision was made too early - based on incomplete data.
The minimum period for assessing a new channel in the construction niche is 3 months. Better 6.
Mistake 3. They only count the primary deal and lose LTV
The channel brought a dealer. The first deal is for 200 thousand. CPL was 15 thousand. ROMI 13x is ok, but not wow.
A year passes. The same dealer made four more orders for 800 thousand in total. The client's real LTV is one million. The real ROMI of the channel is 66x.
If LTV is not taken into account, you are undervaluing expensive but high-quality channels. And you overestimate cheap, but disposable ones.
Mistake 4. There is a dashboard, but no one looks at it
The owner paid for the implementation. The dashboard works, the numbers are updated. But no one from the team enters it. Decisions are still made at meetings based on “feelings.”
This is the most common and most offensive mistake. Technically the system works, but it has not become a management tool.
The solution is to integrate the dashboard into regular processes:
- →Morning marketing stand-ups start with numbers on a dashboard
- →Weekly marketing ↔ sales reconciliations - based on specific metrics in it
- →Monthly reports to the owner - with screenshots and comments on the numbers
- →Marketers' bonuses are tied to specific metrics in the dashboard
If these processes do not exist, the most beautiful dashboard in the world will be useless.
Case. How end-to-end analytics helped Ceramic Group
When we came to Ceramic Group, the situation was classic. Marketing said it brings in a lot of leads. Sales said the leads were bad. There were no numbers that would bring everyone to a common denominator.
In the first two months we:
- →Implemented amoCRM with required fields: source, campaign, object, region, decision maker
- →Connected Metrica → amoCRM via native integration
- →We set up 40 quizzes on the website for different segments - each had a separate flow in CRM
- →Connected call tracking to track calls
- →Linked the data to 1C to account for actual shipments
When the dashboard started working, things became clear that no one had guessed before. One of the channels on which 30% of the budget was spent gave 3% of revenue. The other, which was considered “secondary”, actually brought the highest margin clients.
After redistributing the budget and rebuilding campaigns around real segments, incremental revenue increased by 300 million rubles over the period of work. Not because the marketing budget grew, but because it finally became clear what worked and what did not.
Do you want the same analytics loop in your company?
Sign up for a review. In 45 minutes, we’ll look at what you have now and draw up a roadmap on how to get your data in order in 2 months.
Sign up for analysis →
