Skip To Content

Build Raster Attribute Table


Create or update a table with information about the classes in your raster datasets. This is used primarily with discrete data.


  • If you want to delete an existing table and create a new one, check Overwrite (overwrite = 'OVERWRITE' in Python). A new raster attribute table will be created, and the old one will be deleted.

  • If you have an existing table and you do not check Overwrite, the table will be updated. No fields will be deleted, but the values in the table will be up to date.

  • It is not possible to build a raster attribute table for a raster dataset that is a pixel type of 32-bit floating point.


BuildRasterAttributeTable_management (in_raster, {overwrite})
ParameterExplanationData Type

Select a single band raster dataset that you want to add a table to. This tool will not run if the pixel type is floating point or double precision.

Raster Layer

This allows you to overwrite or append columns and rows to an existing raster attribute table.

  • NONEExisting raster attribute tables will not be overwritten, and any edits will be appended to the current table. This is the default.
  • OverwriteDelete the existing raster attribute tables and create a new raster attribute table.

Code sample

BuildRasterAttributeTable example (Python window)

This is a Python sample for BuildRasterAttributeTable.

import arcpy
arcpy.BuildRasterAttributeTable_management("c:/data/image.tif", "Overwrite")
BuildRasterAttributeTable example 2 (stand-alone script)

This is a Python script sample for BuildRasterAttributeTable.

##Build Raster Attribute Table
##Usage: BuildRasterAttributeTable_management in_raster {NONE | Overwrite}
import arcpy
arcpy.env.workspace = "C:/Workspace"

##Build attribute table for single band raster dataset
##Overwrite the existing attribute table file
arcpy.BuildRasterAttributeTable_management("image.tif", "Overwrite")


Licensing information

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