Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
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
- GitHub repository—source code, releases, and issues
- Getting Started: Import and Validate—load your first survey export
- Core Analysis—summarize questions, distributions, and comments
- Trends, Segmentation, and Hierarchy—trends, attributes, manager roll-ups
- Correlations, Factors, and Attrition—advanced statistical methods
- Function Reference—complete function listing with parameters
- For the R package overview, see vivaglint R package