Business & product operations

The business & product operations (BizOps) team is responsible for translating business goals (strategy) into tactical operations (execution).



See the Operations roles page.




This page describes Sourcegraph’s analytics function, our data sources, and how to use our data tools.

To reach us, mention @business-team in the most relevant channel (i.e. #marketing for a marketing-related question).

Active product analytics dashboards

Dashboards are structured by goal instead of team. As we have more and more projects being worked on and tracked concurrently, this makes it easier for the product, engineering and business teams to track, link to, and simplify the lifecycle of dashboards. For example, we don’t need to think about when it’s time to deprecate a look from the code intel dashboard. When the goal is removed, the dashboard is archived.

WIP - LSIF adoption - Sourcegraph WAU - Browser extension adoption - Sourcegraph extension discoverability - Enterprise onboarding - Code monitoring/saved searches - Campaigns engagement

How we work

Internal BizOps projects: We use GitHub issues in the Sourcegraph analytics repository to document projects, and the analytics kanban board for prioritization.

Data requests and cross-functional projects: Tag @ebrodymoore in existing sourcegraph/sourcegraph GitHub issues or create a new issue. Provide the following data to help us understand and prioritize your request:

  • What is the purpose of the visualization?
  • Will it be frequently used, or is it only needed sporadically?
  • How does it support Sourcegraph’s company and team goals?
  • Do you know how you want the data visualized? If you need a new graph or chart, adding a photo of a sketch on paper helps immensely.
  • When does this need to be delivered?
  • How urgent is this request?

Small asks and questions: Post in the #analytics channel.

If you need clarification or are not sure about any of the above, ask a question in the Slack #analytics channel.

Data sources

We collect data from the following:

  • Google Analytics: Website analytics for Sourcegraph marketing and docs pages (not
  • HubSpot: Marketing automation
  • Salesforce: Customer Relationship Management system (CRM)
  • MixMax: Email marketing automation (Apollo is not used in production, but still retains data)
  • ZoomInfo: Data enrichment of account and contact information
  • Site-admin pages: customer subscriptions and license keys
  • Pings from self-hosted Sourcegraph instances containing anonymous and aggregated information. There are specific guidelines that must be followed for teams to add ping data.
  • Custom tool to track events on the instance
  • Prometheus dashboards show high-level insight into the health of a Sourcegraph instance to admins. Sourcegraph teammates can see the health of

We have written policies about how we handle customer information.

Data tools

  • Looker: Business intelligence/data visualization tool
  • Google Cloud Platform: BigQuery is our data warehouse and the database Looker runs on top of
  • Google Sheets: There are a number of spreadsheets that Looker queries (by way of BigQuery).
  • BizOps builds ad-hoc tools to analyze data for various reasons. The projects are in the Google Drive Analytics folder and the source code is available in the analytics repo.

Data pipelines

Every underlying data source (not chart!) is assumed to always be up-to-date unless noted otherwise.


The HubSpot data pipeline is updated once per day (in the afternoon PST). If you need the latest data at any time, post in the #analytics channel in Slack and the BizOps team can run the pipeline manually.

Lead-generation from HubSpot is triggered by Zapier and is always up-to-date. Marketing operations has more information on lead-gen events.

Using Looker

Looker is a self-service tool with many pre-built reports and visualizations. The onboarding doc is located in Looker. Reach out in the #analytics Slack channel if you have any questions, we’re happy to help!

Best practices

  • When creating and editing dashboards, save individual tables and charts as looks instead of tiles directly to the dashboard. Looks can be added to multiple dashboards while tiles cannot be, and when look is edited, the changes will apply to dashboards that look exists.