LogoLogo
HomeDocumentationLoginTry for free
  • CARTO Academy
  • Working with geospatial data
    • Geospatial data: the basics
      • What is location data?
      • Types of location data
      • Changing between types of geographical support
    • Optimizing your data for spatial analysis
    • Introduction to Spatial Indexes
      • Spatial Index support in CARTO
      • Create or enrich an index
      • Work with unique Spatial Index properties
      • Scaling common geoprocessing tasks with Spatial Indexes
      • Using Spatial Indexes for analysis
        • Calculating traffic accident rates
        • Which cell phone towers serve the most people?
    • The modern geospatial analysis stack
      • Spatial data management and analytics with CARTO QGIS Plugin
      • Using data from a REST API for real-time updates
  • Building interactive maps
    • Introduction to CARTO Builder
    • Data sources & map layers
    • Widgets & SQL Parameters
    • AI Agents
    • Data visualization
      • Build a dashboard with styled point locations
      • Style qualitative data using hex color codes
      • Create an animated visualization with time series
      • Visualize administrative regions by defined zoom levels
      • Build a dashboard to understand historic weather events
      • Customize your visualization with tailored-made basemaps
      • Visualize static geometries with attributes varying over time
      • Mapping the precipitation impact of Hurricane Milton with raster data
    • Data analysis
      • Filtering multiple data sources simultaneously with SQL Parameters
      • Generate a dynamic index based on user-defined weighted variables
      • Create a dashboard with user-defined analysis using SQL Parameters
      • Analyzing multiple drive-time catchment areas dynamically
      • Extract insights from your maps with AI Agents
    • Sharing and collaborating
      • Dynamically control your maps using URL parameters
      • Embedding maps in BI platforms
    • Solving geospatial use-cases
      • Build a store performance monitoring dashboard for retail stores in the USA
      • Analyzing Airbnb ratings in Los Angeles
      • Assessing the damages of La Palma Volcano
    • CARTO Map Gallery
  • Creating workflows
    • Introduction to CARTO Workflows
    • Step-by-step tutorials
      • Creating a composite score for fire risk
      • Spatial Scoring: Measuring merchant attractiveness and performance
      • Using crime data & spatial analysis to assess home insurance risk
      • Identify the best billboards and stores for a multi-channel product launch campaign
      • Estimate the population covered by LTE cells
      • A no-code approach to optimizing OOH advertising locations
      • Optimizing site selection for EV charging stations
      • How to optimize location planning for wind turbines
      • Calculate population living around top retail locations
      • Identifying customers potentially affected by an active fire in California
      • Finding stores in areas with weather risks
      • How to run scalable routing analysis the easy way
      • Geomarketing techniques for targeting sportswear consumers
      • How to use GenAI to optimize your spatial analysis
      • Analyzing origin and destination patterns
      • Understanding accident hotspots
      • Real-Time Flood Claims Analysis
      • Train a classification model to estimate customer churn
      • Space-time anomaly detection for real-time portfolio management
      • Identify buildings in areas with a deficit of cell network antennas
    • Workflow templates
      • Data Preparation
      • Data Enrichment
      • Spatial Indexes
      • Spatial Analysis
      • Generating new spatial data
      • Statistics
      • Retail and CPG
      • Telco
      • Insurance
      • Out Of Home Advertising
      • BigQuery ML
      • Snowflake ML
  • Advanced spatial analytics
    • Introduction to the Analytics Toolbox
    • Spatial Analytics for BigQuery
      • Step-by-step tutorials
        • How to create a composite score with your spatial data
        • Space-time hotspot analysis: Identifying traffic accident hotspots
        • Spacetime hotspot classification: Understanding collision patterns
        • Time series clustering: Identifying areas with similar traffic accident patterns
        • Detecting space-time anomalous regions to improve real estate portfolio management (quick start)
        • Detecting space-time anomalous regions to improve real estate portfolio management
        • Computing the spatial autocorrelation of POIs locations in Berlin
        • Identifying amenity hotspots in Stockholm
        • Applying GWR to understand Airbnb listings prices
        • Analyzing signal coverage with line-of-sight calculation and path loss estimation
        • Generating trade areas based on drive/walk-time isolines
        • Geocoding your address data
        • Find similar locations based on their trade areas
        • Calculating market penetration in CPG with merchant universe matching
        • Measuring merchant attractiveness and performance in CPG with spatial scores
        • Segmenting CPG merchants using trade areas characteristics
        • Store cannibalization: quantifying the effect of opening new stores on your existing network
        • Find Twin Areas of top-performing stores
        • Opening a new Pizza Hut location in Honolulu
        • An H3 grid of Starbucks locations and simple cannibalization analysis
        • Data enrichment using the Data Observatory
        • New police stations based on Chicago crime location clusters
        • Interpolating elevation along a road using kriging
        • Analyzing weather stations coverage using a Voronoi diagram
        • A NYC subway connection graph using Delaunay triangulation
        • Computing US airport connections and route interpolations
        • Identifying earthquake-prone areas in the state of California
        • Bikeshare stations within a San Francisco buffer
        • Census areas in the UK within tiles of multiple resolutions
        • Creating simple tilesets
        • Creating spatial index tilesets
        • Creating aggregation tilesets
        • Using raster and vector data to calculate total rooftop PV potential in the US
        • Using the routing module
      • About Analytics Toolbox regions
    • Spatial Analytics for Snowflake
      • Step-by-step tutorials
        • How to create a composite score with your spatial data
        • Space-time hotspot analysis: Identifying traffic accident hotspots
        • Computing the spatial autocorrelation of POIs locations in Berlin
        • Identifying amenity hotspots in Stockholm
        • Applying GWR to understand Airbnb listings prices
        • Opening a new Pizza Hut location in Honolulu
        • Generating trade areas based on drive/walk-time isolines
        • Geocoding your address data
        • Creating spatial index tilesets
        • A Quadkey grid of stores locations and simple cannibalization analysis
        • Minkowski distance to perform cannibalization analysis
        • Computing US airport connections and route interpolations
        • New supplier offices based on store locations clusters
        • Analyzing store location coverage using a Voronoi diagram
        • Enrichment of catchment areas for store characterization
        • Data enrichment using the Data Observatory
    • Spatial Analytics for Redshift
      • Step-by-step tutorials
        • Generating trade areas based on drive/walk-time isolines
        • Geocoding your address data
        • Creating spatial index tilesets
Powered by GitBook
On this page
  • Step-by-Step Guide:
  • Installing the CARTO QGIS Plugin
  • Authorizing CARTO in QGIS
  • Browsing and accessing your data
  • Georeferencing images in QGIS
  • Editing geometries and pushing changes to your data warehouse
  • Extracting insights using CARTO Builder

Was this helpful?

Export as PDF
  1. Working with geospatial data
  2. The modern geospatial analysis stack

Spatial data management and analytics with CARTO QGIS Plugin

Last updated 2 months ago

Was this helpful?

The seamlessly integrates desktop GIS workflows with cloud-native spatial analytics, allowing users to connect, access, visualize, edit, and sync spatial data from data warehouses between QGIS and CARTO.

While CARTO excels in analytics and visualization of large-scale geospatial data running natively on cloud data warehouse platforms, certain data management tasks—such as geometry editing and digitization—are better suited for desktop GIS tools like QGIS.

In this tutorial, you will learn how to use the CARTO QGIS Plugin to enhance your geospatial processes. Using a telecom network planning example, you will connect QGIS to your data warehouses through CARTO, edit geometries based on an image provided by the urban department, and sync updates seamlessly with CARTO. Finally, you will create an interactive map to review potential sites alongside relevant datasets while keeping the information updated as new edits are made in QGIS.

By the end of this tutorial, you will have a fully integrated process between QGIS and CARTO, ensuring efficient spatial data management in a cloud-native environment.

Important considerations:

In this tutorial, we will be using:

  • QGIS Version: 3.34.15-Prizren

  • CARTO QGIS Plugin Version: 0.92.2

Step-by-Step Guide:

In this guide, we'll walk you through:


Installing the CARTO QGIS Plugin

  1. Open QGIS desktop and start a new project.

  2. Navigate to Plugins > Manage and Install Plugins.

  3. Click on the Not Installed tab and search for "CARTO".

  4. Select CARTO QGIS Plugin and click Install.

  5. Once installed, you should see the CARTO Plugin in the top toolbar and the Browser panel.


Authorizing CARTO in QGIS

Now, you need to log in to your CARTO account to connect your cloud-hosted spatial data with QGIS.

  1. Locate the CARTO Plugin in the QGIS interface (in the Plugins section or Browser panel).

  2. Click on Log In to CARTO.

  3. Enter your CARTO credentials to securely authenticate your account.

After successfully logging in, a confirmation screen will appear, indicating that the CARTO QGIS Plugin is now connected and ready for use.


Browsing and accessing your data

With CARTO authorized, you can now browse and load datasets from your cloud data warehouse directly into QGIS.

  1. In the QGIS Browser panel, locate CARTO Connections. If you don’t see your Browser, activate it via View → Panels → Browser.

  2. You’ll see your available datasets and tables from your organization’s data warehouse.

  3. Click on a dataset to preview its structure and metadata.

  4. You can download the entire table or apply filters (WHERE statements, spatial filters, row limits)

Permissions:

  • Your ability to edit datasets depends on your user permissions in your data warehouse.


Georeferencing images in QGIS

In some cases, geospatial data is unavailable, and all you have is an image or a scanned document. This is where QGIS’s georeferencing capabilities become essential.

In this scenario, you’ve received a PDF containing a newly proposed redevelopment site, which needs to be added to the list of potential sites for review next year. Since this redevelopment area comes from the urban department, there is no existing geospatial dataset available—only a .png image of the site.

  1. Take a screenshot of the above image and save it as .png.

  2. Add your image as a Raster layer:

    • Click on Data Source Manager → Raster.

    • Upload the .png image.

    • Click Add to display it in QGIS.

  1. Click Zoom to Layer(s) to confirm the image was added.

  1. Use the Georeferencer tool:

    • Go to Layer → Georeferencer.

    • In the Georeferencer modal, add the raster image.

    • The image will now appear in the Georeferencer canvas.

  1. Define control points:

    • Select Add Point and mark at least four control points.

    • Click Map Canvas to introduce coordinates.

    • Click on the correct location in the main map canvas.

  1. Run the Georeferencing process:

    • Define an output file name and set transformation settings.

    • Click Run to execute.

    • The georeferenced raster file will now appear in the correct location.


Editing geometries and pushing changes to your data warehouse

Now, we will edit an existing CARTO table to include the newly digitized site for network expansion planning.

  1. In the QGIS Browser, locate an editable table (e.g., planned_regions_2025) within your CARTO connection.

  1. Click Add Layer or use Add Layer Using Filter if you want to download a subset of your data.

  1. Once loaded, start an editing session by clicking the pencil icon in the Editing Toolbar.

  2. Use the Add Polygon tool to digitize the new redevelopment site.

  1. Once finished, right-click to complete the geometry.

  1. Enter the feature attributes (e.g., site name, classification, priority).

  1. Click Save to upload the changes back to your data warehouse through CARTO. If your table does not contain a geoid storing a unique identifer, you'll be prompted with a modal to define your primary key. Please make sure this stores a unique identifer so your edits can be successfully and correctly uploaded.

  1. Go to your CARTO platform, naviage to CARTO Data Explorer to confirm the uploaded feature. The new Port Lands Redevelopment site should now appear.


Extracting insights using CARTO Builder

Now that your data is synchronized and available in your data warehouse, you can leverage the powerful features of the CARTO platform to create interactive and insightful dashboards.

  1. In CARTO Workspace, navigate to Data Explorer and locate your table. In here you should be able to have a preview of both the data and the map. From this interface, click on Create map. This will open a new tab with Builder displaying this data source.

  1. Let's give your map a name, "Toronto - Planned regions for 2025".

  2. After that, we'll rename our layer to "Planned Regions" and style them accordingly so the regions stand out on the map visualization. In our case, we'll set the Fill Color and Stroke Color to light and dark orange. Then, set the Stroke Width to 2.

  1. Let's add Toronto's census data source. To do so, follow the next steps:

  • Select the Add source from button at the bottom left on the page.

  • Select Custom Query (SQL) and then Type your own query under the CARTO Data Warehouse connection.

  • Click on the Add Source button.

The SQL Editor panel will be opened. To add Toronto's census data source, run the query below:

SELECT * FROM `cartobq.docs.toronto_census_population` 
  1. Rename the newly added layer to "Census population" and set the Fill Color based on Total_population property using a light to dark blue palette. Set the Opacity for the Fill Color to 20 and the Opacity for the Stroke Color to 10.

  1. In the main layer panel, change the position of the layer to the bottom, so that Planned regions layer stay on top of the visualization.

  1. Now, we'll add a final dataset, the road network for Toronto, to have visibility on the major roads that are likely to be impacted by this project. To do so, add a custom SQL query and run the following query, as per previous source. This query contains a WHERE rank < 5 that will allow us to dynamically obtain just major roads in this location.

SELECT * FROM  `cartobq.docs.toronto_road_network` WHERE rank < 5
  1. Name this layer "Road network" and style the Stroke Color based on its Rank property, from light to dark pink. Also, set the Opacity to 40 .Then, set the Stroke Width to 2.

We have now finished adding our sources, now let's add some functionality to our dashboard that will allow users to dynamically extract information by leveraging pop-up interactions and charts.

  1. Navigate to the Interactions section, and set the properties for each layer as below:

  • Road Network:

    • name

    • type

    • rank

  • Planned regions: All

  • Census Population:

    • Total_population

  • Formula Widget:

    • Source: Census population

    • Widget name: Total Population

    • Operation: SUM(Total_population)

    • Formatting: 12.3k

    • Behaviour: Filter by viewport

  • Pie Widget:

    • Source: Planned regions

    • Widget name: Region Status

    • Operation: status

    • Behaviour: Filter by viewport

  • Category Widget 1:

    • Source: Planned regions

    • Widget name: Region Name

    • Operation: Region_name

    • Behaviour: Filter by viewport

  • Category Widget 2:

    • Source: Road network

    • Widget name: Road Network Type

    • Operation: Type

    • Behaviour: Filter by viewport

  1. Finally, we're ready to share the map with others. Let's go to the Preview mode, to ensure the map is looking as expected. To do so, click on Preview next to the Share button. A different layout appears that displays the application as if you were the end-user accessing it.

  1. Once you are happy with the dashboard, click on Share and set it to shared with your specific users, SSO groups, your entire organizaiton or publicly.

Congrats, you're done! The final results should look similar to the below:

To get started, install the CARTO QGIS Plugin in your QGIS Desktop application. If you don't have QGIS yet, it is an open-source GIS desktop application that can be downloaded .

If you don't have a CARTO account yet, you can .

If you don’t have an editable table to follow this tutorial, you can create one or import sample data using , either to your own connection or to the Private dataset in .

is CARTO map-making tool that allows you to create scalable web map applications leveraging the data warehouse capabilities. Let's create our interactive dashboard.

Now let's include some to extract insights and allow users to filter data. To do so, navigate to the Widgets tab and include the following widgets:

Before publishing our map, we'll configure our . The data source freshness will determine how up-to-date the data sources in the map are at its initial load. This will ensure users will be able to extract insights always as fresh as you configure this. In our case, we'll set Data Freshness to 5 minutes. So if further changes are done, for example more sites are digitized in QGIS using CARTO QGIS Plugin, they will reach our map automatically once is loaded.

Learn more about crafting impactful visualizations in the section of the Academy.

here
sign up for a free trial
CARTO’s import functionality
CARTO Data Warehouse
Builder
Widgets
Data Sources Freshness
Building Interactive Maps
CARTO QGIS Plugin
Installing the CARTO QGIS Plugin
Authorizing CARTO in QGIS
Browsing and accessing your data
Georeferencing images in QGIS
Editing geometries and pushing changes to your data warehouse
Extracting insights using Builder