QGIS Buffer Wrong Size on EPSG:4326 — Euclidean vs Geodesic Fix and Projection Guide

TL;DR: If your QGIS buffer is the wrong size, your CRS is EPSG:4326 (degrees) — switch to a projected CRS (e.g. a local UTM zone) before buffering, or enable the Geodesic Distance option in the QGIS 3.28+ Buffer dialog. The QGIS Buffer tool has one requirement that is easy to miss: the distance you enter is in the unit of the layer’s CRS, not the unit of your project CRS, and not any intuitive real-world unit you might have in mind. ...

21 June 2026 · 10 min · CadShift

The CAD-GIS Format Gap — Why DWG/DXF and GIS Still Don't Talk

Drop a DXF file onto your GIS and the geometry lands in the middle of the ocean, rotated 90 degrees, scaled by 25.4. Or it lands in the right country but offset by a few hundred metres. Or it imports cleanly into QGIS but every feature ends up on a single layer called “0” with no attributes beyond the original AutoCAD entity type. This is not a bug you can fix with a setting. The CAD-GIS format gap is structural. DWG and DXF were designed for engineering drawings, not for placing things on Earth. GIS formats were designed for the opposite. The two worlds have different answers to three fundamental questions: where are these objects, what do we know about them, and how do they relate to each other? ...

18 June 2026 · 9 min · CadShift

Best Shapefile Viewer Tools for GIS — Free Desktop and Browser Options

A shapefile arrives in your inbox, or you need to verify what’s in a .shp file before importing it into your pipeline. The two questions that come up immediately: what software do you need, and do you have to install anything? The short answer: no install required for a quick look. For anything involving CRS inspection, attribute filtering, or geometry validation, a desktop tool is worth the effort. What You’re Actually Inspecting A shapefile isn’t a single file — it’s a bundle that requires at least four components to be useful: ...

14 June 2026 · 7 min · CadShift

GeoJSON to Shapefile: The 10-Character Field Name Limit That Silently Breaks Your Data

You convert a GeoJSON file to a shapefile and load it into ArcGIS. Your attribute table has changed. The field called municipality_name is now municipali. The field called building_type_code and the field called building_type_category are both now called building_t, except one of them got renamed to building_t0 by GDAL and you missed it. Your spatial join script that references building_type_code now silently returns nulls on every row. This is not a GDAL bug. It is the shapefile format working exactly as designed since 1983. ...

10 June 2026 · 6 min · CadShift

Converting Vector Tiles to Editable GIS Layers — What QGIS and GDAL Can Actually Do

The question comes up constantly: you’re in QGIS, you’ve added a vector tile layer from a basemap service or loaded a .mbtiles file, and you want to export those features to a Shapefile or GeoJSON for editing. You right-click the layer and look for “Save Features As” — but the option is either missing or produces empty output. This is not a QGIS bug. It’s a fundamental property of the vector tile format, and understanding it is the difference between a working extraction workflow and hours of confusion. ...

6 June 2026 · 7 min · CadShift

Geocoding a Mailing List to a QGIS Heatmap — Nominatim, MMQGIS, and Kernel Density Estimation

You have a CSV of postal addresses — a membership list, a customer database, a survey response set. Someone wants to know where these people are concentrated. A heatmap is the right output: it shows density without exposing individual addresses, it scales from 100 to 100,000 records without changing the workflow, and it overlays cleanly on basemaps, zoning layers, or any other spatial data you have. The full pipeline in QGIS: geocode addresses to coordinates using MMQGIS and Nominatim (OpenStreetMap’s free geocoding service), reproject the resulting point layer to a metric CRS, and run kernel density estimation in the QGIS Processing Toolbox. Three steps. The traps are in the rate limits, the CRS handling, and the distinction between two different “heatmap” tools inside QGIS that look alike and behave differently. ...

2 June 2026 · 9 min · CadShift

QGIS Headless with Claude Code: The New Paradigm for GIS Automation

A Reddit thread in May 2026 caught the attention of the GIS community: a spatial analyst running QGIS headlessly via Claude Code, letting an AI agent execute processing algorithms and inspect outputs without ever opening the QGIS GUI. The post got 50 upvotes and 22 comments — more reaction than most QGIS workflow discussions — because it named something practitioners had been edging toward without a label. The shift is real. GIS professionals who already script via PyQGIS or QGIS Model Builder are discovering that qgis_process — QGIS’s native CLI tool for running processing algorithms — is a natural interface for AI agents. It’s discoverable, self-documenting, outputs JSON, and handles the full processing algorithm catalog without requiring a display connection. ...

27 May 2026 · 9 min · CadShift

Free and Open Source GIS Tools for Format Conversion and Analysis

The problem with most “free GIS tools” roundup lists is that they treat GDAL, QGIS, GRASS, and PostGIS as competing products when they’re actually layers of the same stack. GDAL underpins QGIS. QGIS calls GRASS as a processing backend. PostGIS sits behind both for production data. Choosing between them isn’t “which is best” — it’s “which layer do I need to interact with directly.” This is a functional comparison: what each tool does well, where it breaks down, and which one to reach for when you receive a shapefile, a GeoJSON, or a KML and need it in something your software actually reads. ...

24 May 2026 · 9 min · CadShift

AI and the GIS Job Market — What the Claude CAD Demo Actually Means for Spatial Analysts

The thread A post in r/gis hit 101 upvotes this spring after a demo showed Claude performing CAD-adjacent spatial tasks. The 96 comments divided into three camps: alarm (entry-level GIS is gone), pragmatism (analysts who use AI will outcompete those who don’t), and dismissal (spatial analytics requires domain knowledge that LLMs don’t have). All three positions contain something true. The useful question is not “will AI replace GIS analysts?” — that framing produces either denial or panic, neither of which helps. The useful question is: which specific tasks are genuinely automatable, and what does that mean for how you spend your time? ...

22 May 2026 · 7 min · CadShift

Why DWG Files Arrive in QGIS at the Wrong Scale — And the Right Fix When You Control the Pipeline

A surveyor sends you a DWG with what looks like UTM coordinates. You open it in QGIS, the layer appears 100 kilometers from where you expected, and when you zoom to it the geometry is microscopic — a thirty-meter parcel that displays as a 30-millimeter sliver. You set the project CRS to the right UTM zone. Nothing changes. You build a custom CRS in metric units. Nothing changes. You ask the surveyor and they swear the file is correct in AutoCAD. ...

4 May 2026 · 11 min · CadShift