Skip To Content

Create Spatial Reference


Creates a spatial reference for use in ModelBuilder.


  • You can create a spatial reference with set coordinate system, spatial domains, and precision. The spatial domains and precision of the output spatial reference can be further modified using the XY Domain, Z Domain, M Domain, Template XYDomains, and Grow XYDomain By Percentage parameters.

  • Template XYDomains does not have to be in the same coordinate system as that specified in Spatial Reference or Spatial Reference Template. If they are different, the extents will be projected to match.

  • If the Spatial Reference and Spatial Reference Template parameters are both set, the Spatial Reference parameter will take priority.

  • All the parameters of the tool are optional. If no parameters are specified, the spatial reference will be defined as Unknown and the XY Domain will assume standard defaults.

  • In ModelBuilder, the output of this tool can be used as input to tools with a spatial reference parameter (for example, Create Feature Class, Create Feature Dataset, and Make XY Event Layer).

  • Tip:

    In Python, the SpatialReference class can also be used to create a spatial reference.


CreateSpatialReference_management ({spatial_reference}, {spatial_reference_template}, {xy_domain}, {z_domain}, {m_domain}, {template}, {expand_ratio})
ParameterExplanationData Type

Name of the spatial reference to be created.

Spatial Reference

The feature class or layer to be used as a template to set the value for the spatial reference.

Feature Layer; Raster Dataset

Allowable coordinate range for x,y coordinates.


Allowable coordinate range for z values.


Allowable coordinate range for m values.


Feature classes or layers that can be used to define the XY Domain.

Feature Layer

Percentage by which the XY Domain will be expanded.


Code sample

Create Spatial Reference example (stand-alone script)

The following stand-alone script uses the CreateSpatialReference function as part of a workflow that loops through a folder and finds all shapefiles that end in ST, creates spatial references, and appends them into a geodatabase feature class.

# This script reprojects a shapefile in Redlands folder
# from NAD 1983 UTM Zone 11N
# to NAD 1983 StatePlane California V FIPS 0405 (US Feet)

# import system modules
import arcpy
    # set the workspace environment
    arcpy.env.workspace = r"C:\data\Redlands"

    # create a spatial reference object to be used as output coordinate system
    out_sr = arcpy.CreateSpatialReference_management("NAD 1983 StatePlane California V FIPS 0405 (US Feet)")

    # use the output of CreateSpatialReference as input to Project tool
    # to reproject the shapefile
    arcpy.Project_management("citylimit_Project1.shp", "city_CA_FIPS0405", out_sr)

except arcpy.ExecuteError:
    # print geoprocessing message
except Exception as ex:
    # print the exception message


This tool does not use any geoprocessing environments.

Licensing information

  • ArcGIS Desktop Basic: Yes
  • ArcGIS Desktop Standard: Yes
  • ArcGIS Desktop Advanced: Yes

Related topics