Skip to main content

Executive Insights

Transform raw data into actionable narrative summaries with color-coded badges highlighting key metrics, trends, and opportunities.

Best for: Executive dashboards, funnel analysis, performance reviews

Key techniques: Row indexing (rows[0], rows[-1]), conditional badge styling, narrative text generation

Executive Insights Example

Template Code​

<style>
.insights-badge {
display: inline-block;
background: #EFF6FF;
color: #1E40AF;
padding: 0.08rem 0.5rem;
border-radius: 4px;
font-weight: 600;
font-size: 0.85rem;
white-space: nowrap;
}

.insights-badge.red {
background: #FEF2F2;
color: #DC2626;
}

.insights-badge.green {
background: #F0FDF4;
color: #16A34A;
}

.insights-container {
padding: 1.5rem;
max-width: 800px;
font-size: 0.9rem;
line-height: 1.6;
color: #374151;
background: #FFFFFF;
border-radius: 8px;
margin-bottom: 1.5rem;
}

.insights-container ul {
margin-top: 0.5rem;
padding-left: 1.5rem;
list-style: none;
}

.insights-container li {
margin-bottom: 0.75rem;
}

.insights-container li:last-child {
margin-bottom: 0;
}
</style>

<div class="insights-container">
<ul>
<li><p style="margin-bottom: 1rem; line-height: 1.8;">
<strong>Top Performers:</strong>
<span>{{ rows[0].`Product name` }}</span> (<span class="insights-badge">{{ rows[0].`Purchased` }}</span>),
<span>{{ rows[1].`Product name` }}</span> (<span class="insights-badge">{{ rows[1].`Purchased` }}</span>),
and <span>{{ rows[2].`Product name` }}</span> (<span class="insights-badge">{{ rows[2].`Purchased` }}</span>) lead in actual sales conversions.
</p></li>
<li><p style="margin-bottom: 1rem; line-height: 1.8;">
<strong>Largest Cart Abandonment:</strong>
<span>{{ rows[-1].`Product name` }}</span> shows the biggest gap with <span class="insights-badge red">{{ rows[-1].`Cart abandonment` }} </span> abandoned
(<span style="color: #DC2626; font-weight: 600;">{{ rows[-1].`Added to cart` }}</span> added vs. <span style="color: #0891F2; font-weight: 600;">{{ rows[-1].`Purchased` }}</span> purchased),
followed by <span>{{ rows[-2].`Product name` }}</span> (<span class="insights-badge red">{{ rows[-2].`Cart abandonment` }}</span>)
and <span>{{ rows[-3].`Product name` }}</span> (<span class="insights-badge red">{{ rows[-3].`Cart abandonment` }} gap</span>).
</p></li>
<li><p style="margin-bottom: 1rem; line-height: 1.8;">
<strong>High Conversion Rate:</strong>
<span>{{ rows[0].`Product name` }}</span> demonstrates the strongest purchase intent with only a <span class="insights-badge green">{{ rows[0].`Cart abandonment` }}</span> unit gap,
while <span>{{ rows[1].`Product name` }}</span> (<span class="insights-badge green">{{ rows[1].`Cart abandonment` }}</span>)
and <span>{{ rows[2].`Product name` }}</span> (<span class="insights-badge green">{{ rows[2].`Cart abandonment` }} gap</span>) also show relatively strong conversion.
</p></li>
<li><p style="margin-bottom: 0; line-height: 1.8;">
<strong>Opportunity Area:</strong> Products with <span class="insights-badge red">&ge;{{ rows[-3].`Cart abandonment` }}</span> gap suggest potential for targeted remarketing campaigns or checkout optimization.
</p></li>
</ul>
</div>

Required Data Fields​

FieldTypeDescription
Product nameDimensionProduct or item name
PurchasedMeasureNumber of completed purchases
Added to cartMeasureNumber of cart additions
Cart abandonmentMeasureGap between cart and purchase

Sample Data​

Import this data into Holistics to use: sample-data-insights.csv

Product name,Added to cart,Purchased,Cart abandonment
Dumbbells,520,500,20
Fitness Tracker,500,450,50
Jump Rope,480,420,60
Wireless Headphones,500,420,80
Running Shoes,480,380,100
Water Bottle,520,350,170
Protein Powder,490,310,180
Yoga Mat,500,290,210
Resistance Bands,500,260,240
Exercise Bike,500,180,320

Customization Tips​

  • Adjust the badge colors (.insights-badge.red, .insights-badge.green) to match your brand
  • Modify the narrative text to fit your specific use case
  • Add more rows by referencing rows[3], rows[4], etc.
  • Use negative indexing (rows[-1]) to always reference the last items regardless of data size

Open Markdown
Let us know what you think about this document :)