Duckdb-gsheets.com Reviews

Updated on

Based on checking the website, Duckdb-gsheets.com appears to be a specialized resource providing an experimental DuckDB extension designed for seamless integration with Google Sheets.

This isn’t a typical product review site or a service you subscribe to.

Rather, it’s a technical hub for a community-maintained tool that allows users to interact with Google Sheets using SQL queries.

For anyone looking to manipulate spreadsheet data with the power of DuckDB, this extension offers a compelling bridge.

It’s essentially a toolkit for data engineers and analysts who live in the intersection of powerful in-memory analytical databases and widely used cloud-based spreadsheets.

0.0
0.0 out of 5 stars (based on 0 reviews)
Excellent0%
Very good0%
Average0%
Poor0%
Terrible0%

There are no reviews yet. Be the first one to write one.

Amazon.com: Check Amazon for Duckdb-gsheets.com Reviews
Latest Discussions & Reviews:

The site itself is a documentation and distribution point for this specific DuckDB extension.

It outlines installation procedures, usage examples for reading and writing data, and detailed instructions for various authentication methods with Google APIs.

This focus on practical implementation and technical details suggests it’s built for a user base comfortable with command-line interfaces and SQL syntax.

The “🚧 Experimental 🚧 Here be dragons” warning upfront indicates that while powerful, users should be prepared for potential quirks or ongoing development, which is typical for cutting-edge community-driven tools.

Find detailed reviews on Trustpilot, Reddit, and BBB.org, for software products you can also check Producthunt.

IMPORTANT: We have not personally tested this company’s services. This review is based solely on information provided by the company on their website. For independent, verified user experiences, please refer to trusted sources such as Trustpilot, Reddit, and BBB.org.

Table of Contents

Understanding the DuckDB GSheets Extension

This DuckDB GSheets extension is an intriguing piece of open-source engineering, designed to bring the analytical prowess of DuckDB directly to your Google Sheet data.

Think of it as a powerful, local SQL engine that can talk directly to your spreadsheets, enabling complex queries and data manipulations that would be cumbersome or impossible with native Google Sheets functions alone.

It’s built for those moments when you need to quickly query a large spreadsheet, join it with other local data, or perform aggregations without the overhead of setting up a traditional data warehouse.

What is DuckDB?

DuckDB is an in-process analytical database management system. Unlike traditional client-server databases like PostgreSQL or MySQL, DuckDB runs within your application e.g., Python, R, Node.js, or even directly in your terminal. This architecture makes it incredibly fast for analytical queries on local data, often outperforming much larger systems for specific workloads. Its primary strength lies in OLAP Online Analytical Processing scenarios, where you’re performing complex aggregations, joins, and filters on large datasets.

  • Key Characteristics of DuckDB:
    • Columnar-oriented storage: Optimized for analytical queries.
    • In-process: Runs directly within the application.
    • SQL compatible: Uses standard SQL for queries.
    • Fast: Designed for high-performance analytical workloads.
    • Lightweight: Minimal setup and resource requirements.

How Does the GSheets Extension Work?

The DuckDB GSheets extension acts as a connector. It allows DuckDB to treat Google Sheets as if they were local tables that you can query directly with SQL. When you issue a SELECT statement on a Google Sheet via this extension, it makes an API call to Google Sheets, retrieves the data, and then processes it within DuckDB’s engine. Similarly, for COPY TO operations, DuckDB sends the data to your Google Sheet. This bidirectional capability is a significant advantage for data workflows. Skutrue.com Reviews

  • Data Flow:
    1. SQL Query DuckDB: User writes SELECT * FROM read_gsheet...
    2. Extension Intercepts: The GSheets extension catches this command.
    3. Google Sheets API Call: The extension uses your authenticated credentials to fetch data from the specified Google Sheet.
    4. Data Ingestion DuckDB: The retrieved data is loaded into DuckDB’s in-memory columnar format.
    5. SQL Execution: DuckDB performs the requested query.
    6. Result: Query results are returned to the user.

Installation and Setup Process

The installation process for the DuckDB GSheets extension is relatively straightforward for users familiar with DuckDB’s ecosystem.

The website provides clear, concise instructions, starting with the INSTALL and LOAD commands typical for DuckDB extensions.

This streamlined approach allows users to quickly get up and running, focusing on the data analysis rather than complex system configurations.

Installing the Extension

The primary method for installation is directly within DuckDB using its INSTALL command.

This leverages DuckDB’s community extension repository, making it accessible with minimal fuss. Fliqaindia.com Reviews

  • Required DuckDB Version: The website explicitly states that the latest version of DuckDB currently 1.2.0 as of the website’s text is supported. This is crucial for compatibility and ensuring access to the latest features and bug fixes.

  • Installation Command:

    INSTALL gsheets FROM community.
    LOAD gsheets.
    

    This two-step process first downloads the extension from the official community repository and then loads it into your current DuckDB session, making its functions available.

Authentication Methods

Authentication is a critical component for interacting with Google Sheets, and the Duckdb-gsheets.com site details three distinct methods.

Each method caters to different use cases, from interactive browser-based authentication to non-interactive automated workflows. Vectorize.com Reviews

Understanding these options is key to secure and efficient data operations.

  • 1. Browser-based Authentication Default:

    • Command: CREATE SECRET TYPE gsheet.
    • Use Case: Ideal for interactive sessions where you can easily open a browser window to grant permissions. This is often the simplest for initial setup or ad-hoc analysis.
    • Process: DuckDB will prompt you to open a URL in your browser, where you’ll sign in with your Google account and grant the necessary permissions. This generates a temporary access token.
  • 2. Access Token Authentication:

    • Command: CREATE SECRET TYPE gsheet, PROVIDER access_token, TOKEN '<your_token>'.
    • Use Case: Useful when you’ve already obtained an access token through another process or tool. It offers more control over token management.
    • Generation: The website provides detailed steps involving the Google API Console, creating a Service Account, enabling the Google Sheets API, and using the gcloud CLI to generate a token. This token is temporary and will expire, requiring periodic regeneration.
  • 3. Private Key Authentication JSON File:

    • Command: CREATE SECRET TYPE gsheet, PROVIDER key_file, FILEPATH '<path_to_JSON_file_with_private_key>'.
    • Use Case: Best for non-interactive workflows like automated data pipelines, scripts, or server-side applications where browser interaction isn’t possible. This method uses a service account’s private key.
    • Generation: Similar to access token generation, it involves creating a Service Account in the Google API Console and downloading a JSON key file. The extension then handles token conversion from this key file on your behalf.
    • Security Note: The website explicitly warns: “Use caution with it. This private key by default will not expire.” This highlights the enhanced security responsibility when using a private key, as its compromise could grant persistent access to your Google Sheets.

Reading Data from Google Sheets

The DuckDB GSheets extension excels at retrieving data from Google Sheets, offering a flexible array of options to target specific sheets, ranges, or even entire spreadsheets. Vidmoro.com Reviews

This granularity allows users to pull precisely the data they need, optimizing performance and reducing unnecessary data transfer.

The examples provided on the website are clear and cover common data retrieval scenarios.

Basic Data Retrieval

The most straightforward way to read data is by providing the full spreadsheet URL or its ID.

Advanced Reading Options

Beyond basic retrieval, the extension provides parameters to handle various data formats and specific sheet requirements.

  • Handling Headers:
    SELECT * FROM read_gsheet’11QdEasMWbETbFVxry-SsD8jVcdYIT1zBQszcF84MdE8′, header=false.

    This is invaluable when your spreadsheet doesn’t have a header row, preventing the first data row from being misinterpreted as column names.

  • Skipping Type Inference all_varchar=true:
    SELECT * FROM read_gsheet’11QdEasMWbETbFVxry-SsD8jVcdYIT1zBQszcF84MdE8′, all_varchar=true.

    By default, DuckDB tries to infer data types e.g., integer, text, date. Sometimes, this inference can be incorrect or undesirable. Easydict.com Reviews

Setting all_varchar=true forces all values to be read as strings, giving you full control over type casting within your SQL queries.

This is particularly useful for messy or inconsistent datasets often found in spreadsheets.

Reading Specific Ranges

One of the most powerful features is the ability to read only a specific range of cells, mimicking SQL’s WHERE clause on rows and columns before the data even hits DuckDB.

This dramatically reduces memory usage and processing time for large sheets where only a subset of data is relevant.

  • Using sheet and range parameters:
    SELECT * FROM read_gsheet’11QdEasMWbETbFVxry-SsD8jVcdYIT1zBQszcF84MdE8′, sheet=’Sheet1′, range=’B1:C7′.

    This combines sheet targeting with a specific cell range, allowing for highly precise data extraction. Uniplan.com Reviews

  • Using A1 Notation:
    SELECT * FROM read_gsheet’11QdEasMWbETbFVxry-SsD8jVcdYIT1zBQszcF84MdE8′, sheet=’Sheet1!B1:C7′.

    A1 notation e.g., Sheet1!B1:C7 is a standard way to specify ranges in Google Sheets, and the extension supports this familiar syntax.

  • Range in URL:
    SELECT * FROM read_gsheet’https://docs.google.com/spreadsheets/d/11QdEasMWbETbFVxry-SsD8jVcdYIT1zBQszcF84MdE8/edit?gid=0#gid=0&range=B1:C7‘.

    This method allows you to define the range directly within the spreadsheet URL, which can be convenient for sharing links that point to specific data views.

Writing Data to Google Sheets

The COPY TO functionality is where the DuckDB GSheets extension truly shines, offering robust capabilities for writing data back to Google Sheets from your DuckDB tables. Zip2album.com Reviews

This transforms Google Sheets from a static data source into a dynamic output target for your analytical pipelines, enabling real-time reporting, dashboard updates, or simple data exports directly from SQL.

The website provides a comprehensive set of examples, covering everything from basic writes to granular control over sheet and range overwrites.

Basic Data Writing

The simplest way to write data is by specifying the target spreadsheet using its ID or full URL.

Targeting Specific Sheets and Ranges

Just as with reading, the writing functionality allows for precise targeting, ensuring your data lands exactly where you intend it to. Yt-to-mp3.com Reviews

Overwrite and Append Options

One of the most critical aspects of writing data is controlling how existing data is handled.

The extension offers fine-grained control over overwriting and appending.

This is excellent for updating specific report sections or data cells.

If you don’t specify overwrite_range or overwrite_sheet, the entire sheet or the specified sheet/range will be cleared and repopulated with the new data.

Security and Best Practices

When working with APIs that access your personal or organizational data, security is paramount.

The Duckdb-gsheets.com website provides the necessary instructions for authentication, but it’s crucial to understand the implications of each method and adopt best practices to safeguard your Google account and data.

Google API Console and Service Accounts

The process of generating access tokens or private keys heavily relies on the Google API Console and Service Accounts.

  • Service Accounts: These are special Google accounts used by applications like this DuckDB extension instead of individual users. They allow applications to authenticate and interact with Google APIs without requiring user interaction.
    • Principle of Least Privilege: When setting up a Service Account, always grant it the minimum necessary permissions. The website suggests Owner role for your project, which is convenient but grants broad access. For production systems or specific workflows, consider a more granular role that only permits read/write access to Google Sheets, or even specific spreadsheets, if possible, to minimize potential damage if the service account’s credentials are compromised.
    • Dedicated Projects: For enhanced security, it’s often best practice to create a dedicated Google Cloud Project for this integration rather than using a general project. This isolates permissions and makes it easier to manage access.

Managing Access Tokens and Private Keys

The website offers two primary non-interactive authentication methods: access tokens and private keys. Each has its security considerations.

  • Access Tokens:

    • Temporary: Access tokens generated via gcloud auth print-access-token are temporary and expire periodically e.g., after one hour. This is a security feature, as a compromised token has a limited lifespan.
    • Refresh Tokens: While not explicitly detailed on the Duckdb-gsheets.com homepage, real-world applications often use refresh tokens to automatically generate new access tokens without re-authentication. The CREATE SECRET command for access tokens does not seem to handle refresh tokens directly, implying you’d need to regenerate the token manually or via a script when it expires.
    • Storage: Never hardcode access tokens directly in your scripts. Use environment variables or a secure secret management system.
  • Private Keys JSON File:

    • Non-Expiring: The website clearly states: “This private key by default will not expire. Use caution with it.” This is a critical warning. A private key, if compromised, grants persistent access to your Google Sheets or whatever permissions the Service Account has.
    • Secure Storage: The JSON key file containing the private key must be treated with the utmost security.
      • File Permissions: Restrict file system permissions so only the necessary user or process can read the file.
      • Encryption: Consider encrypting the key file at rest.
      • Version Control: Never commit private key files to version control systems like Git. Use .gitignore to ensure they are excluded.
      • Environment Variables/Secret Management: For non-interactive workflows, pass the filepath or the key content via environment variables or a secure secret management solution e.g., HashiCorp Vault, AWS Secrets Manager, GCP Secret Manager.

Sharing Google Sheets with Service Accounts

The website correctly points out that you need to share your Google Sheet with the Service Account email address.

  • Specific Sharing: Instead of sharing the sheet with “Anyone with the link,” ensure you share it specifically with the email address of your Service Account e.g., [email protected].
  • Editor vs. Viewer: If the extension needs to write data, the Service Account must have Editor access. If it only needs to read data, Viewer access is sufficient and more secure. Grant only the necessary level of access.

General Security Practices

  • Network Security: If running DuckDB on a server, ensure proper firewall rules are in place to restrict access to your application.
  • Monitoring: Implement logging and monitoring for your application and Google Cloud project to detect unusual activity related to the Service Account.
  • Regular Audits: Periodically review your Google Cloud project’s credentials and permissions to ensure they align with current requirements.

Limitations and Known Issues

The “Limitations / Known Issues” section on Duckdb-gsheets.com is concise but critical, providing transparency about what the extension cannot currently do or where potential challenges might arise. Understanding these limitations is essential for planning your data workflows and avoiding unexpected roadblocks.

DuckDB WASM Support

  • “DuckDB WASM is not yet supported.”
    • Implication: DuckDB WASM WebAssembly allows DuckDB to run directly in a web browser. This means you cannot use this GSheets extension within a web-based DuckDB application e.g., a web-based SQL editor powered by DuckDB WASM.
    • User Base Impact: This limitation primarily affects developers building browser-based data applications. For those using DuckDB in traditional desktop environments Python, R, CLI, this is not a concern. It implies that for web-based interactive data processing, you’d need to handle Google Sheets integration server-side or through alternative client-side libraries.
    • Future Potential: The “not yet supported” suggests it’s a potential future development, which would significantly expand the reach and utility of this extension to web-first applications.

Google Sheets Cell Limit

  • “Google Sheets has a limit of 10,000,000 cells per spreadsheet.”
    • Context: This is a fundamental limitation of Google Sheets itself, not the DuckDB extension. However, it’s crucial for users to be aware of it when planning to integrate large datasets.
    • Implication for DuckDB Users: While DuckDB can handle massive datasets gigabytes to terabytes, if your target or source Google Sheet exceeds this 10 million cell limit, you will encounter errors, regardless of DuckDB’s capabilities.
    • Practical Advice: For datasets approaching this limit, consider alternative storage solutions like Google BigQuery, Google Cloud Storage, or a dedicated database. DuckDB can still be used for local analysis on chunks of this data or for joining with other sources, but Google Sheets itself becomes the bottleneck for the full dataset. This limitation pushes users to think about data volume thresholds. A quick check of Google’s official documentation for Google Sheets limits confirms this, stating, “Up to 10 million cells for spreadsheets that are created in or converted to Google Sheets.”

Existing Sheets for COPY TO

  • “Sheets must already exist to COPY TO them.”
    • Implication: The COPY TO command in the DuckDB GSheets extension cannot create new sheets within a Google Spreadsheet. You must manually create the target sheet tab in Google Sheets before attempting to write data to it.

    • Workflow Impact: This adds a manual step to automated workflows. If your pipeline dynamically generates data that needs to go into a new sheet each time, you’ll need to either:

      1. Pre-create all potential target sheets.

      2. Use the Google Sheets API directly outside of DuckDB to create a new sheet, then use the DuckDB extension to COPY TO it.

    • Enhancement Opportunity: This is a common feature in other data connectors, so its absence is a notable limitation for fully automated data pipeline creation.

These limitations highlight that while the extension is powerful, it operates within the constraints of the Google Sheets API and its own developmental stage.

Users should factor these points into their architectural decisions and data flow designs.

Support and Community Engagement

The “Support” section on Duckdb-gsheets.com is refreshingly direct: it points users to GitHub.

This is typical for open-source, community-maintained projects and indicates a preference for structured issue tracking over traditional customer support channels.

GitHub as the Primary Support Channel

  • “If you are having problems, find a bug, or have an idea for an improvement, please file an issue on GitHub.”
    • Issue Tracker: GitHub’s issue tracker is the standard method for reporting bugs, requesting features, and seeking help for open-source projects. This centralized approach allows maintainers to track and prioritize development, and users can often find solutions to their problems by searching existing issues.
    • Community Contribution: Encouraging users to file issues on GitHub also fosters community engagement. It allows other users to chime in with similar experiences, propose solutions, or even contribute code fixes. This aligns with the “community extension maintained by Evidence” statement.

Implications for Users Seeking Support

  • Technical Proficiency Required: Users seeking support should be comfortable with GitHub’s interface and the process of opening issues. This implies a target audience that is already somewhat technically proficient.
  • No Direct Email/Phone Support: There are no listed email addresses, phone numbers, or dedicated support forums outside of GitHub. This is not a critique but a characteristic of community-driven projects.
  • Transparency: All support interactions issues, discussions, resolutions are public on GitHub, providing transparency into the project’s health and responsiveness.
  • Potential for Delays: As a community-maintained project, response times can vary depending on the availability of maintainers. While many open-source projects are highly responsive, it’s not a guaranteed SLA Service Level Agreement like with commercial products.

“Maintained by Evidence”

The statement that the extension is “maintained by Evidence” is interesting.

Evidence is an open-source framework for building data-driven reports and dashboards, often leveraging SQL.

This affiliation suggests that the DuckDB GSheets extension likely grew out of a need within the Evidence ecosystem to easily pull data from Google Sheets, making it a well-aligned and practical tool for data practitioners.

This also implies that the core maintainers have a vested interest in the extension’s stability and functionality as it supports their broader product.

Use Cases and Real-World Applications

The DuckDB GSheets extension opens up a plethora of practical use cases for data professionals, analysts, and anyone who regularly juggles data between spreadsheets and analytical tools.

Its ability to bridge the gap between flexible, user-friendly Google Sheets and a powerful, local SQL engine like DuckDB is a must for many common data challenges.

1. Ad-Hoc Data Analysis and Exploration

  • Scenario: You receive a large Google Sheet from a colleague or client containing sales data, customer feedback, or survey responses. It’s too big to comfortably analyze directly in Google Sheets, and you need to perform complex aggregations, filters, or joins with other local datasets.
  • DuckDB GSheets Solution: Instead of exporting the sheet to CSV and then importing it into a database, you can read_gsheet directly into DuckDB. Once in DuckDB, you can run complex SQL queries, create views, and perform fast analytical operations without leaving your SQL environment.
    • Example: Analyzing a spreadsheet with 500,000 rows of product orders to find the top 10 customers by revenue, joined with a local products.csv file.

2. Automating Google Sheet Updates from Data Pipelines

  • Scenario: You have a daily or weekly data pipeline that processes data from various sources e.g., CSV files, local databases and generates summary reports or aggregated metrics that need to be published to a specific Google Sheet for business users or dashboards.
  • DuckDB GSheets Solution: After processing your data in DuckDB or loading it into DuckDB from other sources, you can use COPY <table_name> TO 'gsheet_url' to automatically write the results back to a designated Google Sheet. This eliminates manual copy-pasting and ensures data consistency.
    • Example: A marketing team needs a daily Google Sheet updated with website traffic stats derived from server logs processed through a Python script using DuckDB. The script processes logs, aggregates metrics, and then COPYs the results to the ‘Daily Traffic Report’ sheet.

3. Data Cleansing and Transformation

  • Scenario: You have raw, messy data in Google Sheets that requires extensive cleaning, type conversion, or standardization before it can be used for reporting or analysis.
  • DuckDB GSheets Solution: Read the raw sheet into DuckDB. Leverage SQL’s powerful string functions, CAST operations, CASE statements, and JOINs to clean and transform the data. Then, COPY the clean, transformed data back to a new sheet or overwrite the original.
    • Example: A sheet with inconsistent date formats, missing values, and misspellings in category fields. Use STR_REPLACE, COALESCE, and CAST functions in DuckDB to standardize the data, then write it back to a “Cleaned Data” tab.

4. Hybrid Data Workflows Local Data + Cloud Spreadsheets

  • Scenario: You have some critical reference data stored locally e.g., product master data in a CSV and transactional data in Google Sheets e.g., daily sales. You need to join these datasets for a complete view.
  • DuckDB GSheets Solution: Read both the local CSV and the Google Sheet into DuckDB. Perform a JOIN operation on the common keys. This allows you to combine disparate data sources efficiently within a single SQL environment.
    • Example: Joining read_csv'local_products.csv' with read_gsheet'daily_orders_sheet' to calculate total revenue per product category.

5. Data Archiving and Snapshotting

  • Scenario: You want to periodically take snapshots of a Google Sheet’s data for historical analysis or auditing, storing these snapshots locally.
  • DuckDB GSheets Solution: You can use read_gsheet and then COPY <result> TO 'local_archive_file.parquet' DuckDB supports various output formats like Parquet, CSV, JSON. This creates a local, versioned archive of your spreadsheet data.
    • Example: Saving a daily snapshot of a “Budget Tracking” sheet to a Parquet file for long-term historical analysis.

These use cases demonstrate how the DuckDB GSheets extension bridges the gap between spreadsheet flexibility and database power, empowering users to build more robust and automated data workflows.

Frequently Asked Questions

What is Duckdb-gsheets.com?

Based on looking at the website, Duckdb-gsheets.com is the official documentation and distribution point for an experimental DuckDB extension that enables users to read and write Google Sheets using SQL queries directly within DuckDB.

Is the DuckDB GSheets extension officially affiliated with Google or DuckDB?

No, based on the website, it explicitly states: “Note: This project is not affiliated with Google or DuckDB, it is a community extension maintained by Evidence.”

How do I install the DuckDB GSheets extension?

You can install the extension directly within DuckDB by running: INSTALL gsheets FROM community. followed by LOAD gsheets.

What version of DuckDB is supported by this extension?

The website indicates that the latest version of DuckDB currently 1.2.0 as mentioned in their text is supported.

Can I read data from Google Sheets using SQL with this extension?

Yes, you can read data by using functions like read_gsheet with the spreadsheet URL, ID, sheet name, or a specific range.

Can I write data from DuckDB to Google Sheets?

Yes, you can use the COPY <table_name> TO '<gsheet_url>' FORMAT gsheet. command to write data from a DuckDB table to a Google Sheet.

What authentication methods are available for connecting to Google Sheets?

The website describes three methods: browser-based authentication default, authentication with a Google API access token, and authentication using a Google API private key JSON file.

Which authentication method is best for automated workflows?

For non-interactive workflows like data pipelines, the website recommends using a Google API private key JSON file as it typically does not expire.

How do I generate a Google API access token for this extension?

You need to navigate to the Google API Console, create a new project, enable the Google Sheets API, create a Service Account, and then use the gcloud CLI to generate the access token.

Do Google API access tokens expire?

Yes, the website notes that access tokens will periodically expire, requiring you to regenerate them.

How do I generate a Google API private key for non-expiring access?

You follow similar steps to generating an access token, but instead of the gcloud CLI, you download a JSON file containing the private key from the Google API Console after creating a Service Account.

What are the security considerations when using a Google API private key?

The website warns: “This private key by default will not expire.

Use caution with it.” It’s crucial to store the JSON private key file securely and never commit it to version control.

Can I specify a specific sheet or range when reading from Google Sheets?

Yes, you can use parameters like sheet='SheetName' or range='A1:C10' in the read_gsheet function to target specific data.

Can I control whether a header row is included when reading or writing?

Yes, for reading, you can use header=false. For writing, you can use header TRUE to force a header when appending or header FALSE to write without a header.

Can I overwrite only a specific range in a Google Sheet when writing?

Yes, you can use overwrite_range TRUE along with sheet and range parameters in the COPY command to update only the specified cells.

What is the default behavior when writing data to an existing Google Sheet?

By default, the COPY TO command will overwrite the entire sheet or the specified sheet/range if you don’t specify overwrite_range FALSE or overwrite_sheet FALSE.

Can I append new data below existing data in a Google Sheet?

Yes, you can use overwrite_sheet FALSE, overwrite_range FALSE in the COPY command to append new rows below existing data.

Does the DuckDB GSheets extension support DuckDB WASM?

No, the website explicitly states: “DuckDB WASM is not yet supported.”

Is there a cell limit when working with Google Sheets?

Yes, Google Sheets itself has a limit of 10,000,000 cells per spreadsheet, which applies when using this extension.

Where can I find support or report issues for the DuckDB GSheets extension?

The website directs users to file an issue on GitHub for any problems, bugs, or improvement ideas.

Leave a Reply

Your email address will not be published. Required fields are marked *

Recent Posts

Social Media