What is BI-as-code?
Overview
BI-as-code is a modern approach to business intelligence that treats analytics assets as code, bringing the same benefits of version control, collaboration, and automation that software development teams have enjoyed for years. With Rill, you can define your entire analytics stack—from data models to dashboards—using code, while still maintaining the flexibility to make UI-based adjustments when needed.
How It Works in Rill
Rill implements BI-as-code through a combination of:
- SQL-based Definitions: Define your models via SQL to connect to your various sources
- YAML Configuration: Configure your metrics view, dashboards, and project settings via YAML
- Git Integration: Version control your analytics assets
- CLI Tools: Deploy and manage your analytics stack from the command line

This approach allows engineering teams to maintain control over their analytics stack while enabling business users to make adjustments through the UI when needed.
Key Benefits
Version Control & Collaboration
- Track changes to your analytics assets in Git
- Review and approve changes through pull requests
- Maintain a clear history of how metrics and dashboards evolve over time
- Collaborate effectively across teams
Automation & CI/CD
- Automate the deployment of analytics changes
- Integrate analytics testing into your CI/CD pipeline
- Ensure consistency across environments
- Reduce manual deployment errors
Developer Experience
- Use familiar tools and workflows (Git, CLI, IDEs)
- Write SQL for last time ETL
- Maintain analytics as part of your codebase
- Leverage existing development practices
Flexibility & Coexistence
- Define core metrics and dimensions in code
- Make UI-based adjustments when needed
- Both code-defined and UI-created assets live in harmony
- Best of both worlds: developer control and business agility
Learn More
For a deeper dive into BI-as-code and its benefits, check out our blog post: What is BI-as-code?