I have lots of layers involving output areas and buildings in a city, and a shaky grasp of what CRSs are.

Basically, I feel like I've clicked the default OSGB 1936 British National Grid at every opportunity it asked me to specify the projection, but it also keeps alerting me like "Input layers have non-matching CRS"

How would I make 100% sure that every individual layer is projected the same, and if they aren't, how do I fix that?

  • where did you get your data from? It should come with a projection set
    – Ian Turton
    Aug 3, 2016 at 14:48
  • 3
    What menu item did you use when you get this message, and what data formats do you have? For example, CSV never has CRS information stored, and some external commands complain about it.
    – AndreJ
    Aug 3, 2016 at 15:28

2 Answers 2


Spatial data sets store geometry. Spatial geometries are interval data - the origins for these data vary. Spatial data have X, Y, and (maybe) Z values stored within files associated with these data. There are other files, like projection files (PRJ) or world files (TFW) that help GIS sort out different coordinate reference systems (CRS) and allow the GIS to display spatial data in the same location regardless of CRS. The data geometries and the CRS files must match for a GIS to display data in the same location. If they do not you have a GIS problem.

GIS allow you to add data with different CRS but sometimes they need help figuring out what CRS these data are in. If you go assigning a CRS to a spatial data set without knowing what CRS the geometry is using you will not have data that align. This happens when data are shared without PRJ files or world files and you assign a CRS without knowing the correct CRS to assign. Check the metadata associate with your datasets (or contact the creators) to figure out what CRS these data reference before you choose one.

To understand whether your data are using the same CRS you should start a new QGIS project. Under project properties - CRS, uncheck enable on the fly CRS. Add your original data to this project. If they do not overlay, then these data do not share the same CRS.


In the panel with the list of layers, right click on any layer > Set CRS > Set layer CRS. Check each one and see if they are all the same: OSGB 1936 British National Grid EPSG:27700.

A CRS (co-ordinate reference system) is a set of reference points which enable your layers to all line up with each other.

  • This does not prevent the QGIS alert message when using external applications like GDAL in the background. They don't know of the QGIS settings.
    – AndreJ
    Sep 23, 2018 at 7:38
  • 1
    The crs within that menu is just the crs you set manually to overwrite layersettings, this does not actually reproject. Make sure that all your layers are set to the crs they are really in. (If you didn't change anything in there, all is fine). Then To reproject a layer to a new crs use export/save as... and choose the crs you want to have your layer in.
    – MrXsquared
    Nov 24, 2018 at 15:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.