vivaglint Python package

The vivaglint Python package is an open-source toolkit for HR analysts and data scientists who work with Microsoft Viva Glint survey data. It automates import, validation, and analysis workflows for Glint CSV exports, enabling multi-cycle trends, manager roll-ups, demographic segmentation, attrition risk analysis, and comment search directly in Python.

Note

This package runs locally in your Python environment. No employee data is transmitted to external services.

Capabilities

The vivaglint Python package supports the following workflows:

  • Import and validate Viva Glint CSV exports with strict structure checks and descriptive errors
  • Enrich survey data by joining employee attribute files (department, job level, tenure, and more)
  • Summarize questions with mean, standard deviation, Glint Score (0-100), response counts, and favorability percentages
  • Analyze response distributions to surface floor/ceiling effects and polarized response patterns
  • Track trends across survey cycles with change scores and percent change
  • Segment by demographics to compare scores across any attribute combination
  • Manager roll-ups to identify high- and low-performing teams, with optional full-tree aggregation
  • Measure attrition risk by linking survey responses to termination data
  • Identify factor structure using exploratory factor analysis
  • Search open-ended comments using exact or fuzzy matching

Workflow overview

A typical vivaglint analysis follows four stages:

Stage Functions Purpose
1. Import read_glint_survey(), extract_questions() Load and validate your survey export
2. Enrich join_attributes(), split_survey_data() Add HR attributes; separate quantitative and qualitative data
3. Analyze summarize_survey(), compare_cycles(), analyze_by_attributes(), and more Run the analysis that fits your research question
4. Visualize plot=True on supported functions Generate charts with matplotlib/seaborn

Installation

Install from PyPI:

pip install vivaglint

Core dependencies install automatically, including pandas, numpy, scipy, rapidfuzz, matplotlib, and seaborn.

Frequently asked questions

Why use Python for Viva Glint analysis?

The vivaglint Python package enables analysis that goes beyond the Viva Glint UI, including multi-cycle trend analysis, flexible segmentation, attrition risk calculation, factor analysis, and custom data science workflows. It's designed for analysts who want full control over their data in a Python-native workflow.

Do I need to be a Python expert to use this package?

No. A basic familiarity with Python, pandas DataFrames, and running scripts is enough to get value from the core functions. Most functions return a clean DataFrame ready for further analysis.

Is my survey data kept private?

Yes. All processing is performed locally in your Python environment. The package doesn't send data to any external service.

Does the Python package support API import?

Not yet. The Python version currently supports CSV exports from the Viva Glint UI. If you need API-based exports, use the R package.

Is it free?

Yes. vivaglint is released under the MIT License and is free to use, modify, and distribute.

Resources