Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a Shapefile but its coordinate system is Unknown, and there is no *.prj file.

How I can identify it now? Are there any tools that could help?

share|improve this question
What software do you have ArcView, ArcGIS - QGIS? – Mapperz Mar 28 '11 at 17:56
In fact all of them. Why? – com Mar 28 '11 at 17:58
load the shapefile in arcmap and then project it to an known projection (change the data frame projection) export as data frame then the shapefile is in a known projection - reproject that known shape to your own projection to fit existing data. – Mapperz Mar 28 '11 at 18:03
You can also tell a lot by looking at the coordinates in the dataset. What are the range of x and y values within the dataset? How much of an area do you expect it to cover? – scw Mar 29 '11 at 2:54
Not sure what you mean. Why do the shapefiles not have a defined projection? Can you clarify your operating environment. – Dan Patterson Dec 4 '11 at 3:39

11 Answers 11

up vote 5 down vote accepted

Since this question never gets old, I built a site that does the Brute Force method. If you drag a zipped shp+shx onto the map it will map it in every coordinate system available in PostGIS. Assuming you know what "correct" looks like, you can zoom to that area and click on the polygon to get the .prj file from

share|improve this answer
link not working :( – pl71 Jan 29 at 13:22
It looks like they don't host it any more but there appears to be a hosted copy here: – user568458 Jul 25 at 14:11

There's always the "brute force" method:

  1. Take a layer with a known coordinate system that is supposed to overlay with your unknown layer.

  2. Now make some educated guesses on what projection the unknown layer could be. (UTM, Plate Carree, etc). Project your known coordinate system layer into each projection until you find one that matches the unknown layer as much as possible.

Good Luck

share|improve this answer
this is my method also. I utilize two different software to "prove" it. You might also peruse this question for some basic direction on projections.… – Brad Nesom Mar 28 '11 at 20:16
You could simplify step 2 a little by just changing the dataframe (ArcMap) projection, and letting the known layer reproject on the fly. – Brandon Copeland Mar 28 '11 at 20:50
Note that you shouldn't be projecting the data. You should be defining the projection. Projecting the data changes the coordinates. Defining the projection just assigns a projection to that data and tells that software what projection the data is already in. These are two different tools in ArcMap, "Define Projection" is the one you want to use. – Sean Aug 31 '11 at 12:36

I'm promoting comments by Mapperz and Brandon Copeland by adding an answer that uses their technique.

  1. If you have ArcGIS Desktop, add some reference data that covers the same area to ArcMap. This reference data must have a valid coordinate system (projection) definition.
  2. Add the data in an unknown coordinate system.
  3. Research what possible coordinate systems are used in this area. One place to check is the EPSG Registry.
  4. Set the data frame's coordinate system to the possibilities. If the data-with-a-known-coordsys line up with the data-without-a-known-coordsys, you've probably identified the coordinate system.

This technique takes advantage of the fact that ArcMap can convert data to a new coordinate system in-memory. The data-without-a-known-coordsys cannot be converted so it's just displayed. By projecting the known data in-memory, we can see quickly what coordinates it has in the various possible coordinate systems.

share|improve this answer
Side note: In QGIS reprojecting in-memory is called "on-the-fly". – underdark Mar 29 '11 at 6:08
It's called 'on-the-fly' in ArcGIS as well! I keep finding a lot of people who don't understand that phrase though, so I've been trying to use 'in-memory' instead. – mkennedy Mar 29 '11 at 22:32

There are two great links from Esri that go into detail on this:

share|improve this answer

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

1… is a recent post in the resource centre (mapping section) that goes over the process, similar to brenth's suggestion – SaultDon Mar 29 '11 at 16:04

Believe it or not people, you might be surprised what a simple google search can sometimes reveal!!

At my last job, I had a layer of Geology data (polygon) named "FSU_Geol.shp". My boss gave it to me and asked me to find out a number of things. First off, he was handed this shapefile by the client, and there was no .prj file, so he wanted me to figure that out. He also wanted me to figure out what the categories of Geology were. I could go on-and-on, but lets cut to the chase .... I googled it, and I ended up HERE.

I was beside myself!! The acronym in the naming convention stood for "surface Geology of the Former Soviet Union", and the Google search led me "directly" to the source (USGS). Everything, and I mean "EVERYTHING" I could ever need to know about this shapefile was at the top link I hit. I'm not saying that Google can find anything & everything, but let me tell you, I was fresh out of university, and just taking a "shot in the dark", and look at the feedback I got!! My boss was so impressed, yet I just got lucky!!
In another instance, someone in the office had downloaded a number of shapefiles using a batch function. I don't remember the name of the software package at the moment, but the .prj files were missing. I simply went in to the metadata in ArcCatalog, and I actually found my answer in there. Again, don't quote me, but I think there was a URL to the source in there.

The above answers are all excellent, and having said that, I'll be bookmarking this discussion for future reference. Ever since that day however ..... I "start" with a google search if there's no clues in the metadata!!

share|improve this answer

Ask the producer.

If you know common CRS for your geographic region, you can try some of them. But asking is better.

share|improve this answer
The only problem is i cannot ask him...This was also the first thought which i had. – com Mar 28 '11 at 17:53
Then, you'll have to go brute force as brenth said. – underdark Mar 28 '11 at 20:08

Not a tool (I don't know of one in existence that would let you do that), but check out @mkennedy's reply to How would I convert this point to WKID 4326?. She explains how she arrived at the correct spatial reference. and patience will be your friends.

Additionally, Esri provides a guide on how to guess a coordinate system (though I prefer mkennedy's method if you know a bit more about the data).

share|improve this answer

Seriously outdated at this point, but Werner Flacke and Birgit Klaus posted Find Projection on ArcScripts in 2007. I don't think the source code is there, unfortunately. It's VBA-based so only usable in ArcGIS Desktop v9.2 and possibly 9.3. It does include two shapefiles with the areas of interest from the EPSG Geodetic Parameter Dataset which could be used to narrow the possibilities.

Blue Marble Geographic Calculator and Geographic Transformer have coordinate system recovery tools.

share|improve this answer
Thanks for the tip Melita. The code is there (*.frm). The license is public domain. PrjFinder is a companion to the book "Working with Projections and Datum Transformations in ArcGIS" (2006). – matt wilkie Aug 30 '11 at 22:27

The best answer I've found to this question is non-technical: find out where your data came from. Agencies and organizations tend to be consistent with their use of projections. Know it came from your state DOT? Look at the rest of their data and see what it tells you. Don't know where it came from? An educated guess is just as likely to send you down the right road.

At least it makes tackling the problem with brute force a little more do-able!

share|improve this answer

I really love this web tool: . Check your file and look up some coordinates. Zoom to approximately the same place on the globe and let it guess.

share|improve this answer
This is actually the best tool I've found. Guesswork in ArcMap isn't really useful in the long run or if you don't know what it should be. Can't help with homebrew coordinate systems and lack of one completely, but who can! – Martin Mar 14 at 11:28

Try the ogrinfo program supplied as part of GDAL.

See How to access Shapefile metadata using OGR?

So ogrinfo might not give you the projection information without a .prj file, but it is still a useful tool to help you investigate the list of potential projections.

For example:

Geometry: Polygon
Feature Count: 269 
Extent: (320000.000000, 505000.000000) - (323000.000000, 511000.000000) 

This response suggests to me the shapefile is using a reference system based on meters and not on degrees.

Assuming you know where the data is roughly from, you now have a shorter list of possible projections.

Other best practices might be to:

  • Ask the people who gave you the data in the first place, even if they don't know exactly they should have a list of possible projections that could look at in the first instance.
  • Look to see if there is any associated metadata.

It is probably better to start from some position of knowns, rather than try and brute force from scratch.

share|improve this answer
This doesn't answer the question that was asked. – Dan C Mar 12 '14 at 21:02
If there is no prj file, hen ogrinfo will return no results for the coordinate system information. – Devdatta Tengshe Mar 13 '14 at 2:59

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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