df2gspread
Export tables to Google Spreadsheets.
Decision gist · record as of 2026-08-14
Yes, if you need to sync data with Google Sheets and can tolerate the OAuth setup overhead and dormant maintenance status. No, if you require active maintenance, Python 3 certainty, or a more modern Google Sheets integration. The GPLv3 copyleft license is a hard blocker for proprietary code.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Google OAuth 2.0 credentials file (~/.gdrive_private) and initial browser-based authorization before any upload or download can succeed.
- High install friction due to requiring manual Google OAuth credential setup and authentication flow before the package can function.
- Last release was in 2019; the repository remains active but development is dormant.
License · maintenance · safety
GPLv3 (copyleft) — GPLv3 copyleft license means any code that imports and uses df2gspread must also be distributed under GPLv3 or a compatible license—a significant constraint for proprietary or differently-licensed projects.
last release 2019-01-03 (2780 days) · last repo commit 2024-11-13 · 131 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 99,391 downloads/mo, #13,025 on PyPI
Alternatives
Verify before relying
pip install df2gspread
from df2gspread import df2gspread as d2g
d2g.upload(df, '/path/to/spreadsheet', 'Sheet1')- Whether a DataFrame library is a runtime dependency (not listed but used in all documented examples).
- Current compatibility with modern Google Sheets API versions and authentication flows.
- Python 3 support status (classifiers list only Python 2.7; latest release is 2019).
What it is and what it does
df2gspread is a Python bridge for moving table data between Google Spreadsheets and DataFrames. It provides two main functions: upload() to write a DataFrame to a Google Sheet, and download() to read a Sheet into a DataFrame. The package handles Google Drive authentication via OAuth 2.0 and abstracts away the complexity of the Google Sheets API.
The package is designed for workflows where data lives in Google Drive and needs periodic sync with Python analysis pipelines. It requires manual credential setup—downloading an OAuth JSON file from Google Cloud Console and authorizing the application once—before it can read or write. No runtime dependencies are declared in the package metadata.
Use it for
- Export analysis results directly to a shared Google Sheet for team review.
- Automate periodic data pulls from Google Sheets into a Python pipeline for further processing.
- Sync tabular data stored in Google Drive with local DataFrames for offline analysis.
- Replace manual copy-paste of spreadsheet data by programmatically uploading cleaned data.
- Build a data collection tool that reads responses from a Google Form stored as a Sheet.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to sync data with Google Sheets and can tolerate the OAuth setup overhead and dormant maintenance status.
No, if you require active maintenance, Python 3 certainty, or a more modern Google Sheets integration. The GPLv3 copyleft license is a hard blocker for proprietary code.
Install
df2gspread on PyPI
Before you install
High install friction due to requiring manual Google OAuth credential setup and authentication flow before the package can function. Last release was in 2019; the repository remains active but development is dormant.
Requires Google OAuth 2.0 credentials file (~/.gdrive_private) and initial browser-based authorization before any upload or download can succeed.
License in practice
GPLv3 copyleft license means any code that imports and uses df2gspread must also be distributed under GPLv3 or a compatible license—a significant constraint for proprietary or differently-licensed projects.
Quickstart
pip install df2gspread
from df2gspread import df2gspread as d2g
d2g.upload(df, '/path/to/spreadsheet', 'Sheet1')
Verify before relying
- Whether a DataFrame library is a runtime dependency (not listed but used in all documented examples).
- Current compatibility with modern Google Sheets API versions and authentication flows.
- Python 3 support status (classifiers list only Python 2.7; latest release is 2019).
Package facts
| License | GPLv3 copyleft |
| Python support | Not specified |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Dormant 2,780 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 99,391 / month, #13,025 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: GNU General Public License v3 (GPLv3)Natural Language :: EnglishProgramming Language :: Python :: 2.7Topic :: Office/BusinessTopic :: Utilities |
Evidence: df2gspread-1.0.4.tar.gz
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “google sheets data sync”
- df2gspreadTransfers tabular data between Google Spreadsheets and DataFrames,…
- gspread-dataframeConverts between Google Sheets worksheets and pandas DataFrames,…
- gspreadgspread provides a Python interface to read, write, format, and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Utilities packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Pygments is a syntax highlighter that colorizes source code and text in over 500 languages and formats, outputting to HTML, LaTeX, RTF, SVG, images, or ANSI terminal sequences.
Install it if you need to display or transform source code.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
See also gspread-pandas · gspread-dataframe · gsheets · gspread · pandas-td · gspread-formatting · gspread-asyncio · pyspark-pandas · pandas-gbq · pygsheets