Convert a list of historic places into a map

Prepare the table

To convert a list of locations into points on a map, the list first needs to be reformatted as a table, for example, as an .xlsx or .csv file. The work of copying and pasting the content from Wikipedia into a Microsoft Excel table has already been done for you. However, before you import the table into ArcGIS, you'll make some improvements to its formatting to ensure that the correct locations are found.

  1. Download AncientCities.xlsx.
  2. Find the downloaded file and double-click it to open it in Microsoft Excel.

    If you don't have access to Microsoft Excel or a similar program, you can download the modified file and skip to the next section.

  3. Open the table and review the data.

    Some of the entries in the Name column have their previous names in parentheses.

    Names with historical names in parentheses

    This might make location matching difficult. You'll separate the historic names into their own column to help ensure that the geocoding process is smooth and finds the correct locations.

  4. Right-click the header for column B and click Insert.

    Insert option in the column context menu

    A new empty column (named B) appears.

  5. In column B, row 1, type Historical name.
  6. In column B, row 5, type Hippo Regius.
  7. In column A, row 5, remove the text (as Hippo Regius) so the cell contains only the text Annaba.

    Annaba row with Historical name set to Hippo Regius

  8. Edit the following place-names in the same way so all of the names in parentheses are moved into the Historical name column:
    • Benghazi/Euesperides
    • Constantine/Cirta
    • Fes/Fes-al-Bali
    • Luxor/Wasat, better known by its Greek name Thebes
    • Marrakesh/Murakuc
    • Tangier/Tingi
    • Tripoli/Oyat

    Completed table

    Some of the place-names in this table are relevant to your class and some are not. There may also be some cities that are missing from the list that you'd like to include. Since Wikipedia is an unreliable source, you'll need to evaluate this data for errors as well as relevancy.

  9. Make any further edits to the table that you feel are appropriate, such as adding or removing rows.
  10. Save the table and close Excel.

    Your list is now formatted as a table and is ready to be geocoded.

Add the table to ArcGIS Pro

Now that you have a table of locations, you can use ArcGIS Pro to convert it into geospatial data. The geocoding process will ask you a series of questions about your data and then try to match each row in the table to the correct location on earth. You'll have a chance later to review the matches and fix any errors.

  1. Start ArcGIS Pro. If prompted, sign in using your licensed ArcGIS account.

    If you don't have ArcGIS Pro or an ArcGIS account, you can sign up for an ArcGIS free trial.

  2. Under New Project, click Map.

    New map button

  3. In the Create a New Project window, for Name, type Ancient cities in Africa. Optionally, choose a new location for your project. Click OK.
  4. On the ribbon, click the Map tab. In the Layer group, click Add Data.

    Add Data button

  5. Browse to and choose AncientCities.xlsx. Inside, choose Africa$.

    This is the sheet within the Excel table.

  6. Click OK.
  7. In the Contents pane, under Standalone Tables, right-click Africa$ and choose Geocode Table.

    Geocode Table option in the Standalone Tables context menu

    The Geocode Table pane appears next to the map.

Geocode the table

In this lesson, you'll follow a guided process to set up the geocoding tool. Later, you may prefer to click Go to Tool to skip the questions and fill in the tool's parameters without guidance.

  1. At the bottom of the Geocode Table pane, click Start.

    The first page asks what geocoder to use.

  2. For Input Locator, choose ArcGIS World Geocoding Service.

    The next page asks if you want to geocode using one field or multiple fields from your table. In ArcGIS, columns are called fields. You'll review the fields in your table to help make this decision.

  3. Click the Attribute table button.

    Attribute table button

    The table appears beneath the map. The Name field is the primary information that you need to locate the cities on a contemporary map of Africa. The Present region field will also be helpful, as it lists the country that each city is located in today.

    Name and Present region fields in the attribute table

  4. Close the attribute table and choose More than one field.
  5. Click Next.

    Next, you'll specify the fields to be used for geocoding.

  6. For Address or Place, choose Name. For Country, choose Present_region.

    Chosen Data Field options

    Using this service will consume credits. The cost is 40 credits per 1,000 geocodes. You can expect to spend at least 1 credit in this lesson but you may consume more as you rematch locations.

  7. Click Next.

    Next, you need to decide how and where to store the new data. By default, the Geocode Table tool will create a feature class, which is a kind of geospatial dataset. The feature class will be stored in the geodatabase that was created when you created the project. This default location is suitable, so you won't change it.

    Geospatial data has to be stored with a coordinate system. By default, the new feature class will use the WGS 1984 geographic coordinate system. You'd prefer to use a projection that is better suited for maps of Africa, so you will choose a different coordinate system.

  8. Next to Output, click the Select coordinate system button.

    Select coordinate system button

  9. In the Coordinate System window, in the Search bar, type Africa and press Enter.
  10. Expand Projected Coordinate System, Continental, and Africa. Click Africa Lambert Conformal Conic.

    Africa Lambert Conformal Conic projected coordinate system selected.


    To learn more about how to choose an appropriate coordinate system, see Choose the right projection.

  11. Click OK.
  12. In the Geocode Table pane, for Preferred Location Type, choose Address Location.
  13. For Output Fields, choose Minimal.

    Choosing Minimal will ensure that you have a chance to review your matches, without adding too many new fields to your geocode results.

    Preferred Location Type set to Address Location and Output Fields set to Minimal.

  14. Click Next.

    Next, you can choose to limit the search to a single country. Because your locations are in many countries, you'll skip this part.

  15. Click Next.

    You can also limit the search to only certain kinds of places, so time is not wasted searching for things such as street names or postal codes.

  16. Expand Populated Place and check City and Metro Area.

    City and Metro Area selected.

  17. Click Finish.

    The Geocode Table tool appears. All of the parameters have been filled in based on the guided workflow that you just completed.

  18. Scroll to the bottom of the pane and click Run.

Review unmatched locations

A new layer, named Africa_Geocoded, is added to the map. A Geocoding Completed window also appears. It says that 25 locations were matched, 1 was unmatched, and 11 were tied.


The ArcGIS World Geocoding Service is constantly being updated with new addresses, so your numbers may be different.

You'll begin the rematch process to properly locate the one unmatched location and to confirm that the other locations were matched correctly.

  1. In the Geocoding Completed window, click Yes.

    If you want to continue rematching cities later, right-click the Africa_Geocoded layer in the Contents pane, click Data and choose Rematch Addresses.

    The attribute table for the new layer appears beneath the map. The Rematch Addresses - Africa_Geocoded pane also appears. The Unmatched tab is currently selected, showing Zeila/Avalites as the one unmatched location.

    Zeila/Avalites name in the Rematch Addresses pane

    This place does not appear on the map yet because the map does not have data to indicate where it should be located. You're not familiar with this place, so you'll go back to your original data source to see whether you can learn more.

  2. Go to

    The Wikipedia page shows a map with the town of Zeila located on the coast in the far west of Somaliland. Somaliland is internationally considered to be part of Somalia.

  3. In ArcGIS Pro, zoom to eastern Africa, to the northwest part of Somalia, close to Djibouti.

    Border between Somalia and Djibouti

    There are some roads leading to the peninsula where you expect to find the town of Zeila, but there is no label. It's possible that you can find different information on the OpenStreetMap basemap. This map, like Wikipedia, is created from crowdsourced data.

  4. On the ribbon, click the Map tab. In the Layer group, click Basemap and choose OpenStreetMap.

    OpenStreetMap basemap

    The map updates and a label for Zeylac appears.

    The label for Zeylac visible after OpenStreetMap basemap is selected.

    Zeylac is similar to the Somali spelling of Saylac that you saw on the Wikipedia page for Zeila. It looks like this is probably the correct location.

  5. In the lower portion of the Rematch Addresses - Africa_Geocoded pane, click the Pick from Map button.

    Pick from Map button

  6. Click the Zeylac location on the map.

    A marker appears on the map and a row appears in the table in the Rematch Addresses - Africa_Geocoded pane.

    New marker on the map in the town of Zeylac

  7. With the new row selected, click the Match button.

    Match button

    The Rematch Addresses pane switches to the first location in the Matched list, because there are no longer any unmatched locations.

Review matched locations

The ArcGIS World Geocoding Service found location matches for the other 36 cities. You could accept these matches and assume that they are correct, however, it's good practice to review them first. This dataset in particular merits a review of the location matches. There may be other cities, such as Zeila, which have alternate spellings, or which have dwindled in importance since ancient times. These factors can make accurate location matching difficult.


If you want to continue rematching cities later, right-click the Africa_Geocoded layer in the Contents pane, click Data and choose Rematch Addresses.

The Rematch Addresses - Africa_Geocoded pane shows the first matched location: Agadez. On the map, it appears to be in the correct location, so you will not change it.

  1. In the Rematch Addresses pane, click the Next Record button.

    Next Record button

    The next location is Asmara. It too appears to be the correct location.

    Matched location marker on the map in Asmara

    The selected marker (A) is the matched location. Any other markers are suggested locations, which are considered less likely than the matched one.

  2. Click the Next Record button again.

    The next location is Benghazi. The map zooms to a coastal city with Arabic labels. If you don't read Arabic and are unfamiliar with this region, it might be difficult to confirm that it is the correct location, so you'll change the basemap.

  3. Switch the basemap to Imagery Hybrid.

    Now you can see that the matched location is correctly located in the city of Benghazi.

    Matched location marker on the map in Benghazi

    You can also choose locations from the attribute table for review.

  4. In the attribute table, scroll until you can see the Name field. Click the row number for Sofala (row 28) to select it.

    Sofala row selected in the attribute table

  5. On the map, zoom out until you can see several markers on the map.

    Matched and suggested location markers on the map

    None of the markers seem right. You know that Sofala was once a prominent seaport, so you were expecting it to be located on the coast.

  6. Visit the Wikipedia page for Sofala:

    It says that Sofala is presently known as Nova Sofala. You'll search for this name instead.

  7. In the Rematch Addresses - Africa_Geocoded pane, next to the Name field, click Sofala and type Nova Sofala to rename it.

    Name renamed to Nova Sofala in the Rematch Addresses pane.

  8. Press Enter.

    A new selected marker appears on the map at the mouth of a river.

    New location marker on the map

  9. Zoom in to examine the location on the imagery basemap.

    There are a few houses in the area, but it is not a city. Some further research will be needed before you can be sure of this location.

  10. Continue to read the Sofala Wikipedia page.

    It provides some more information about its location:

    The shifting sands and boundaries of the Buzi estuary have since allowed the sea to reclaim much of old Sofala… Sofala lost its remaining commercial preeminence once Beira was established 32 kilometres (20 mi) to the north in 1890.

    Zoom out until you can see the label for Beira to the north.

    If the locations appearing on your map do not match, try exploring the OpenStreetMap basemap to locate the area. Use the Buzi estuary as identified in your investigations as a landmark.

    Identifying the Buzi estuary on the map

    You can use the Pick from Map option in the Rematch Addresses - Africa_Geocoded pane to add the identified location.

  11. You'll check whether Beira is the correct distance from the suggested location.
  12. On the ribbon, on the Map tab, in the Inquiry group, click the bottom half of the Measure button. Choose Measure Distance.

    Measure Distance tool

  13. In the Measure Distance window, choose Geodesic and Kilometers.

    Measure Distance tool set to Geodesic and Kilometers.

    Geodesic measurements are more accurate because they consider the curvature of the earth.

  14. On the map, click the marker for the suggested location, then click Beira.

    Measure distance line between matched location and Beira

    The distance shown is roughly 35–39 kilometers, which is close to the distance described in Wikipedia. This looks like it is the correct location.

  15. Close the Measure Distance window.
  16. In the Rematch Addresses - Africa_Geocoded pane, click the Match button to confirm this location.
  17. On the ribbon above the attribute table, click Clear.

    Clear button on the attribute table

    You'll continue to review the remaining locations.

  18. Use the Next Record button to review each matched location and either confirm that it is correct or update it to a new location.

Review tied locations

Tied locations are those where the geocoding process found several match candidates, but without a clear winner.


If you want to continue rematching cities later, right-click the Africa_Geocoded layer in the Contents pane, click Data and choose Rematch Addresses.

  1. In the Rematched Addresses pane, click the Tied tab.

    Tied tab in the Rematch Addresses pane

    The first tied location is Aksum, Ethiopia. Of the suggested locations, B looks like the best representation of this city.

    Suggested location marker on the map in Aksum

  2. In the Rematch Addresses pane, click the B row and click Match.

    Selected row and match button

  3. Use the Next Record button to review each tied location and either confirm that it is correct or update it to a new location.
  4. When you are satisfied that you have an accurate dataset, in the Rematch Addresses - Africa_Geocoded pane, click the Save Edits button.

    Save Edits button

  5. In the Save Edits window, click Yes.
  6. Close the Rematch Addresses - Africa_Geocoded pane and the Geocode Table pane. Leave the attribute table open.

Style the map

You have converted a list of place-names into geographic data. Next, you'll label the locations and save a map that you can share with your students.

  1. In the Contents pane, right-click Africa_Geocoded and click Label.

    Labels appear on the map. You'll also change the basemap to match the other maps you've created for this class.

  2. Change the basemap to Modern Antique Map.

    If Modern Antique Map is not listed in the basemap gallery, open the Catalog pane. On the Portal tab, on the Living Atlas tab, search for the Modern Antique vector tile layer and add it to your map.

    Modern Antique vector tile layer in the Catalog pane

    The contents of the basemap gallery are set by your organization's administrator.

  3. Click one of the point symbols to view the pop-up.

    Pop-up for Kismayo

    The pop-up contains a few extra fields that were added by the geocoding process. You don't need to share these with your students. You'll configure the pop-up to only show the relevant fields.

  4. Close the pop-up.
  5. In the Contents pane, right-click Africa_Geocoded and click Configure Pop-ups.
  6. In the Configure Pop-ups pane, double-click Fields (13).

    Fields button in the Configure Pop-ups pane

  7. Uncheck Only use visible fields and Arcade expressions.
  8. In the Display column, uncheck all fields above Name {Name}.

    First six check boxes unchecked in the Fields Options list

  9. Close the Configure Pop-ups pane. Click a feature to view its new pop-up.

    Shortened pop-up for Kismayo

    The unnecessary fields are gone.

  10. Close the pop-up.

Edit the data

If you notice an error or a mistake in your data after you finish reviewing locations, it can still be fixed. You'll edit the table to fix a few errors that you noticed in the place-names.

  1. Zoom to the Gulf of Aden, between Yemen and Somalia.

    There are two labels here with slashes: Zeila/Avalites and Berbera/Malao.

    Labels containing slashes

    When you were researching Zeila earlier, you read that Avalites is its ancient name. Some more research tells you that Berbera is the current place-name, while Malao is the historic one. You'll edit the data to correct these place-names.

  2. In the attribute table, scroll to the Berbera/Malao row (row 7). In the Historical name column, double-click the empty cell and type Malao. In the Name column, rename Berbera/Malao to Berbera.
  3. Scroll to the Zeila/Avalites row (row 36). For Name, type Zeila. For Historical name, type Avalites.

    You'll also replace the historical name of Sofala, which you edited earlier.

  4. Scroll to the Nova Sofala row (row 28). For Historical name, type Sofala.

    Edited cells in the attribute table

  5. On the ribbon, click the Edit tab. In the Manage Edits group, click Save.

    Save button on the ribbon

  6. In the Save Edits window, click Yes.
  7. Close the attribute table.

    The labels on the map now only show the present name of each city. Finally, you will rename the Africa_Geocoded layer so it is ready to share.

  8. In the Contents pane, click Africa_Geocoded two times so it is editable. Type Ancient cities in Africa and press Enter.
  9. Right-click Ancient cities in Africa and click Zoom To Layer.
  10. On the Quick Access Toolbar, click Save.

    Save button on the Quick Access Toolbar

The map of ancient cities in Africa is ready to share with your students. You converted a list of place-names into a geospatial dataset and a map.

You edited a table so it would have more consistent formatting, geocoded the table, and reviewed and corrected the resulting location matches. You researched place-names and used basemaps and measuring tools to find the right locations. Now your students can use the map you've made to better explore and understand the places they'll be learning about in class.

Now that you've made a map, the next step is to share it. If you want to design a layout and print this map, try Make a layout. If you want to share this map in an interactive form so people can zoom and access the pop-ups, try the lesson Convert a static map into a web app.

You can find more lessons in the Learn ArcGIS Lesson Gallery.