Enable COGO (Data Management)


Enables COGO on a line feature class and adds COGO fields and COGO-enabled labeling to a line feature class. COGO fields store dimensions that are used to create line features in relation to each other.


  • Adds the following COGO fields to the selected line feature class: Arc Length, Direction, Distance, Radius, and Radius2. All fields are of type Double.

  • Adds COGO-related labeling and symbology to the selected line feature class. Lines are drawn with added COGO symbology, and a label expression labels each line with its COGO dimensions if they exist.

  • Run the Disable COGO geoprocessing tool to disable COGO on the line feature class. The COGO fields can be deleted.
  • If one or more of the COGO fields already exist and are of the correct type, only the remaining, missing COGO fields are added.

  • If a line feature class is COGO enabled, the Traverse tool Traverse populates the COGO fields with the entered dimensions.

    Learn more about the Traverse tool

  • If a line feature class is COGO enabled, creating lines with the 2 Point Line tool 2-Point Line using editing constraints populates the COGO fields with the constraint dimensions.
  • The Direction field stores the direction (bearing) of the line from its start point to its endpoint.

  • The Distance field stores the distance (length) of the line.

  • The ArcLength field stores the arc distance between the start point and endpoint of a curved line.

  • The Radius field stores the distance between the curve center point and the curve line.

  • The Radius2 field stores the second radius for a spiral curve. This radius can be set to infinity.


ParameterExplanationData Type

The line feature class that will be COGO enabled.

Feature Layer

Derived Output

NameExplanationData Type

The COGO enabled dataset.

Table View

Code sample

EnableCOGO example 1 (Python window)

The following Python window script demonstrates how to use the EnableCOGO tool in immediate mode.

import arcpy
arcpy.env.workspace = "E:\ArcGISXI\Mont\Montgomery.gdb"
EnableCOGO example 2 (stand-alone script)

The following stand-alone script demonstrates how to check for and enable COGO on a line feature class.

import arcpy

# Variable to contain the path of the feature class that is to be COGO Enabled
lineFeatureClass = r"d:\test.gdb\myLineFC"

# Check to see if the feature class is already enabled by using .isCOGOEnabled on a Describe
if arcpy.Describe(lineFeatureClass).isCOGOEnabled == False:
    # If it returns False, run EnableCOGO_management and pass the feature class
    print("{} is already COGO Enabled".format(lineFeatureClass))


This tool does not use any geoprocessing environments.

Licensing information

  • Basic: No
  • Standard: Yes
  • Advanced: Yes

Related topics