Add an Excel Spreadsheet to QGIS

How to easily and quickly add an Excel spreadsheet to QGIS

Adding an Excel spreadsheet to QGIS involves a few straightforward steps: installing the right plugin and then importing your data. Here is a step-by-step guide.

Step-by-step guide to add an Excel spreadsheet to QGIS

Step 1: Install the “Spreadsheet Layers” plugin

  1. Open QGIS on your computer.
  2. Open the Plugin Manager: go to Plugins > Manage and Install Plugins.
  3. Search for “Spreadsheet Layers”: type the name in the search bar, select it from the list, and click Install Plugin. This plugin enables QGIS to read .xlsx and .ods files directly.

Step 2: Load the Excel spreadsheet

  1. Prepare your Excel file: ensure the first row contains column headers and that the file is saved and closed. If your data includes geographic coordinates, make sure they are in separate columns (for example, Longitude and Latitude).
  2. Open the Spreadsheet Layers dialog: go to Layer > Add Layer > Add Spreadsheet Layer. This menu entry is added by the Spreadsheet Layers plugin. Do not use Add Vector Layer for Excel files — that path is for formats such as Shapefile and GeoPackage.
  3. Browse for your file: click the browse button (“…”) and navigate to your .xlsx or .xls file.
  4. Configure the layer:
    • If the file contains multiple sheets, select the correct sheet from the drop-down menu.
    • If your data contains coordinate columns, check the Geometry box and set the X field (longitude) and Y field (latitude). Set the CRS to EPSG:4326 (WGS 84) if your coordinates are in decimal degrees.
    • If the data has no coordinates (for example, a table you intend to join to a spatial layer), leave the geometry option unchecked to import it as a non-spatial table.
  5. Add the layer: click Add to import the spreadsheet data into QGIS.

Step 3: Verify and style the data

  1. Open the Attribute Table: right-click on the newly added layer in the Layers panel and select Open Attribute Table to confirm that the data has imported correctly.
  2. Configure symbology: right-click on the layer, select Properties, and go to the Symbology tab to style your data as needed.

Additional information

  • Handling coordinates: if your Excel file contains latitude and longitude columns, specify them in the geometry settings during import (Step 2, point 4 above) so that QGIS can plot each row as a point on the map.
  • Geocoding addresses: if your Excel file contains street addresses rather than coordinates, you will need to geocode the addresses first — that is, convert them to latitude/longitude values — before they can be mapped. QGIS plugins such as MMQGIS provide built-in geocoding tools that can help with this.
  • Alternative approach — import as CSV: if you prefer not to use the Spreadsheet Layers plugin, you can save your Excel file as a CSV (File > Save As > CSV in Excel) and then import it via Layer > Add Layer > Add Delimited Text Layer. This method uses QGIS’s built-in delimited text importer, which also lets you specify coordinate columns and the CRS.

By following these steps, you can easily add and visualise Excel spreadsheet data in QGIS, enabling you to leverage tabular data for spatial analysis and mapping.

Frequently asked questions about adding Excel spreadsheets to QGIS

How do I install the Spreadsheet Layers plugin in QGIS?

Go to Plugins > Manage and Install Plugins, search for “Spreadsheet Layers”, and click Install Plugin.

What if my Excel file has multiple sheets?

When adding the Excel file via Add Spreadsheet Layer, you can select the specific sheet you want to import from the sheet drop-down in the dialog.

How should I format my Excel spreadsheet for QGIS?

Ensure that the first row contains clear column headers and that the data is clean and well-organised. If you plan to map the data as points, include separate columns for longitude (X) and latitude (Y) in decimal degrees.

Can I import CSV files into QGIS as well?

Yes. CSV files can be imported using Layer > Add Layer > Add Delimited Text Layer. This is QGIS’s built-in importer and does not require any additional plugin.

What if my Excel data contains coordinates?

In the Add Spreadsheet Layer dialog, enable the Geometry option and set the X field to your longitude column and the Y field to your latitude column. Set the CRS to EPSG:4326 if the coordinates are in decimal degrees (standard GPS coordinates).

How do I handle address data in Excel files?

Address data must be geocoded — converted to geographic coordinates — before it can be mapped. You can use geocoding services or QGIS plugins such as MMQGIS, which includes a geocoding tool, to obtain latitude and longitude values from addresses.

Why is my Excel data not displaying correctly in QGIS?

Common causes include incorrect data formatting, missing column headers, swapped X/Y (longitude/latitude) columns, or an incorrect coordinate reference system. Double-check that longitude is assigned to X and latitude to Y, and that the CRS matches your data source.

Can I edit the Excel data after importing it into QGIS?

Yes, you can edit attribute data within QGIS, but changes will not be written back to the original Excel file. To save edits permanently, export the modified layer to a new format such as GeoPackage or CSV.

How do I visualise and style the imported Excel data?

Right-click on the imported layer, select Properties, and use the Symbology tab to style the data. You can choose from single symbol, categorised, graduated, and other renderer types.

What coordinate reference system (CRS) should I use for my data?

For data with decimal-degree latitude and longitude coordinates (such as those from a GPS or Google Maps), use EPSG:4326 (WGS 84). If your data uses projected coordinates (such as easting/northing in metres), select the appropriate projected CRS for your region.

Can I join Excel data with existing spatial layers in QGIS?

Yes. Import the Excel file as a non-spatial table (leave the geometry option unchecked), then use Layer Properties > Joins to join it to an existing spatial layer using a common field such as an ID column.

How do I handle large Excel files in QGIS?

For large files, ensure your computer has sufficient memory. If performance is slow, consider converting the Excel file to a GeoPackage or CSV, which QGIS handles more efficiently than .xlsx files. You can also split large files into smaller chunks if needed.

How do I save my QGIS project with the imported Excel data?

Save your QGIS project via Project > Save As. Note that the project file stores a reference to the original Excel file path, so avoid moving or renaming the source file after saving.

Can I automate the import of Excel files into QGIS?

Yes. You can use Python scripting via the QGIS Python console (PyQGIS) to automate the import process for Excel files using the QgsVectorLayer class with the Spreadsheet Layers provider.

How do I update the Excel data in QGIS if the source file changes?

Because the layer links to the source file, updating the Excel file and then reloading the layer in QGIS (right-click > Reload) will reflect the changes. Alternatively, re-import the updated file.

What are common errors when importing Excel files into QGIS, and how do I fix them?

Common errors include missing or malformed column headers, merged cells (which QGIS cannot read — flatten them first), incorrect geometry field assignments, and CRS mismatches. Ensure the Excel file is cleanly formatted with no merged cells or blank header rows before importing.

Can I export QGIS data back to Excel?

Yes. Right-click on a layer, choose Export > Save Features As, and select the MS Office Open XML Spreadsheet [XLSX] format to export the attribute data as an Excel file.

How do I troubleshoot issues with importing Excel files into QGIS?

Verify that the Spreadsheet Layers plugin is installed and up to date, check that the file is not open in Excel at the same time, ensure column headers are present and free of special characters, and consult the QGIS documentation or community forums for specific error messages.

Working in QGIS? You should listen to the MapScaping podcast!

About the Author
I'm Daniel O'Donohue, the voice and creator behind The MapScaping Podcast ( A podcast for the geospatial community ). With a professional background as a geospatial specialist, I've spent years harnessing the power of spatial to unravel the complexities of our world, one layer at a time.