The goal
The team wants a screen in the office that shows how today is going, hour by hour, against the same day last week, plus a daily view of conversion rate by channel. Echo already collects the site's events, so Lens can read them directly, without waiting for an analytics tool to process them.
| You will build | Lens feature |
|---|---|
| An Echo events table with a count of events | Echo source |
| One row per day per channel with a column per conversion | Pivot |
| Conversion rate | Ratio metric |
| An hourly "today" tile and daily trend tiles | Tile reference |
| A wall-screen report | Reports, TV mode |
This walkthrough uses the conversion events purchase and generate_lead, and session_start as the denominator. Use the event names your site sends.
Step 1: Echo events table
- Configure > Data Tables > + New Table > Echo Events. Name it "Site Events".
- Add the dimensions
event_name,traffic_sourceandpage_path. - Under Count Metrics, click + Add Count Metric and name it
events. It counts one per event. - Set the schedule to Hourly and the sync mode to Incremental, so each sync reads only new events.
- Save. The first sync loads the backfill period.
On an hourly schedule, keep the mode on Incremental. Full Refresh would re-read the whole backfill period every hour.
Step 2: Pivot to one column per event
- + New Table, under Composite Tables choose Pivot. Name it "Daily Conversions by Channel".
- Source table: "Site Events". Group By:
traffic_source. - Add three metrics, each with aggregation count and one condition:
| Metric | Condition |
|---|---|
sessions | event_name EXACT session_start |
purchases | event_name EXACT purchase |
leads | event_name EXACT generate_lead |
- Save. The pivot builds right away and rebuilds after every sync of "Site Events".
The pivot has one row per day per channel, with days in your property's time zone.
Step 3: Add the conversion rate
On the pivot table, add a Ratio metric purchase_rate with numerator purchases, denominator sessions and format Percent. Do not multiply by 100; the percent format does that.
Step 4: Build the board
Boards > + New Board, "Live Conversions":
| Tile | Table | Metric | Settings |
|---|---|---|---|
| Intraday, large | Site Events | events | Tile filter event_name = purchase; Stack bars by traffic_source |
| KPI, small | Daily Conversions by Channel | purchases | Date range: relative, today; Compare To: last week |
| KPI, small | Daily Conversions by Channel | purchase_rate | Date range: relative, last 7 days; Compare To: previous period |
| Line, medium | Daily Conversions by Channel | purchase_rate | Group By traffic_source |
| Table, medium | Daily Conversions by Channel | sessions, purchases, leads, purchase_rate | Group By traffic_source; show total row |
The Intraday tile reads the events table, which keeps the time of each event, so it can show hours. The pivot is daily, so use it for the day-level tiles.
Step 5: Put it on a screen
- Reports > + New Report, tick the board, click Save Report.
- Reopen the report. In TV / Wall Display, tick Open in TV mode and set Change tab every to 5 minutes.
- Open the TV link on the wall screen's browser. With one board, the report refreshes on that interval.
How fresh is it?
The board is as fresh as the last sync of "Site Events". On an hourly schedule that is within the hour. Results are cached for up to five minutes and the cache clears on every sync.
Check the numbers
- Today's total on the Intraday tile should equal the sum of the hourly bars.
- If
purchasesis zero but the Intraday tile shows purchases, check the event name in the pivot condition matches exactly what the site sends. - The pivot counts days in your property's time zone, so its "today" can differ slightly from a report that uses UTC days.