Ship Features with Confidence

Analytics Built Into Your Development Workflow

Define analytics alongside your code. Version control your dashboards. Deploy insights with every release. Analytics that evolve with your application.

Complete Feature Observability

Everything you need to understand how your features perform in production.

Batch Analytics & Insights

Track feature adoption, usage patterns, and performance metrics with scheduled data updates.

Business Impact

Connect feature changes to business metrics like conversion, retention, and revenue.

Smart Alerts

Get notified about performance regressions, error spikes, or unusual usage patterns.

A/B Testing Analytics

Built-in support for experiment analysis with statistical significance testing.

User Segmentation

Understand how different user cohorts interact with your features.

Trend Analysis

Spot patterns and predict future behavior with historical trend analysis.

Analytics as Part of Your Development Process

1

Code & Define

Write feature code and analytics config in the same PR

2

Test & Review

Test analytics locally, review dashboards in staging

3

Deploy Together

Ship features and analytics dashboards simultaneously

4

Monitor & Learn

Track adoption and impact, iterate based on data

Simple Integration, Powerful Insights

Track Feature Usage

python
# models.visivo.yml
models:
  - name: feature_events
    args:
      - python
      - track_features.py
    table_name: feature_tracking

# track_features.py
import pandas as pd
import json
from datetime import datetime

# Collect feature usage from your application logs
events = []
with open('app_logs.json', 'r') as f:
    for line in f:
        log = json.loads(line)
        if log.get('feature_flag'):
            events.append({
                'timestamp': log['timestamp'],
                'feature': log['feature_flag'],
                'user_id': log['user_id'],
                'value': log.get('value', 0)
            })

df = pd.DataFrame(events)
df.to_csv('output.csv', index=False)

Auto-Generated Dashboards

yaml
# project.visivo.yml
# Reusable business logic lives in the semantic layer
models:
  - name: feature_events
    sql: SELECT * FROM ${ref(feature_events)}
    metrics:
      - name: active_users
        expression: "COUNT(DISTINCT user_id)"
        description: "Distinct users touching the feature"
    dimensions:
      - name: event_day
        expression: "DATE_TRUNC('day', timestamp)"

# Insights handle the chart + client-side filter/split/sort
insights:
  - name: adoption-rate
    model: ${ref(feature_events)}
    props:
      type: scatter
      mode: lines+markers
      x: ?{ ${ref(feature_events).event_day} }
      y: ?{ ${ref(feature_events).active_users} }
    interactions:
      - split: ?{ ${ref(feature_events).feature} }
      - sort: ?{ ${ref(feature_events).event_day} ASC }
      - filter: ?{ ${ref(feature_events).feature} = 'new-checkout-flow' }

charts:
  - name: feature-adoption
    insights:
      - ${ref(adoption-rate)}

dashboards:
  - name: Feature Analytics
    rows:
      - height: medium
        items:
          - chart: ${ref(feature-adoption)}

Smart Alerting

yaml
# project.visivo.yml
# Destinations are reusable notification targets
destinations:
  - name: engineering-slack
    type: slack
    webhook_url: ${ env.SLACK_WEBHOOK_URL }

  - name: oncall-email
    type: email
    to: oncall@company.com

# Alerts fire after 'visivo test' when their 'if' expression is true
alerts:
  - name: feature-health
    if: >{ anyTestFailed() && env.ENVIRONMENT == "PRODUCTION" }
    destinations:
      - ${ ref(engineering-slack) }
      - ${ ref(oncall-email) }

Built for Modern Engineering Teams

Feature Flags & Rollouts

Monitor adoption rates during gradual rollouts

Compare performance between control and treatment groups

Automatically detect and alert on rollout issues

Make rollback decisions based on real data

Product Development

Validate product hypotheses with real usage data

Identify which features drive engagement

Prioritize development based on impact

Share insights across product and engineering

Start Shipping Features with Confidence

Join engineering teams using Visivo to track and visualize feature performance.

$ curl -fsSL https://visivo.sh | bash
Install command copied