Manage data

Publish a hosted feature layer from a CSV file

You already have a CSV spreadsheet with more than five years of reported coyote activity in Oakville. You'll publish this data as a hosted feature layer.

  1. Download the CSV file to your computer and open it in a text editor such as Notepad or Microsoft Excel.

    This file includes Coyote Encounters data downloaded from the Town of Oakville Open Data Portal. (Licensed under the Open Government License—Town of Oakville.) The data has been modified slightly for instructional purposes.

    The data has columns for x,y coordinates, and other information such as location notes, type and date of observation, and comments. You’ll add this file to ArcGIS Online to visualize the locations on a map.

  2. Go to and sign in to your ArcGIS organizational account with publisher privileges.

    If you haven't joined an organization and don't have an account yet, you can sign up for a free trial.

  3. At the top of the site, click Content. On the My Content tab, click Add Item and click From your computer. Browse to the CSV file on your computer, and provide the following details for your new item:
    1. For Title, accept the default value. If necessary, add your initials or change it to use a unique title within your organization.
    2. If your organization has set up content categories, click Assign Category and select relevant categories to keep your content organized.
    3. For Tags, type the following string of keywords (including commas) to describe your item and help users find it: coyotes, crowdsource, Oakville, Ontario, Canada.
  4. Leave the box checked to publish the file as a hosted feature layer.

    Publishing a hosted feature layer allows you to share your data in a web map or app and configure it for reuse. Hosted feature layers also allow you to edit data, which supports community contributions.


    Review best practices for using layers in maps that perform well on the web.

    When you add a CSV file with location information (street addresses or coordinates), the features can be located on a map. In the field table, the Field Name column lists the field names (column headings) from the CSV file. In the Location Fields column, these field names are matched to appropriate categories of address information.

    Add Item window with field map

  5. Click Add Item.

Update item details and configure the layer

Once you've added your file, it appears in your content and you can edit its details. To help others understand the purpose of your content, you'll complete the item details. You can refer to the Item Information section for improvement recommendations.

  1. Click Add a brief summary about the item. In the Edit Summary box, type the following text and click Save: Reported coyote activity in the Town of Oakville, Ontario Canada.
  2. Edit the other item details:
    • Description: Reported coyote activity in the Town of Oakville, Ontario Canada. This is the source data for a crowdsourcing solution being developed by the city. It has multiple purposes and audiences. The community can report coyote activity and view reports that have been reviewed for quality. City staff can view all recently reported coyote activity and collect new data in the field. City staff in the office can review and modify data for quality before sharing it with the community. This layer was created for instructional purposes only and should not be used as an authoritative resource.
    • Terms of Use: This layer was created for instructional purposes using a modified version of the Coyote Encounters CSV data file downloaded from the Town of Oakville Open Data Portal (
    • Credits (Attribution): Contains information licensed under the Open Government License — Town of Oakville. (

    Now that you have a hosted feature layer with location data and corresponding attributes, you can query and update the data in ArcGIS Online. The CSV file includes columns for the x,y coordinates. ArcGIS used those coordinates to create the points in your layer, so you no longer need to keep the X and Y fields.

  3. Click the Data tab to view the table of fields and attributes for this layer. Click the X column header and choose Delete.

    Data tab with the X field's menu and an arrow pointing to the Delete option

  4. Click Delete Field to update the table. Delete the Y field too.

    The field names that appear in the column headers are what end users see when they're working with features in the layer. If necessary, you can provide names that are more meaningful.

  5. Click Fields. In the Display Name column, click Encounter_type to open settings for the field.
  6. Click the Edit button next to the display name and change the name to Type of observation. Click Save.

    Changing the display name of a field doesn't affect the field name stored in the attribute table. You can also create a list of suggested attribute values that users can choose when adding and editing features. The table already contains four unique values for this field (Encounter, Sighting, Feeding, and Garbage), so you'll populate the list with these values.

  7. Click Create List. Click Generate List and click Save.

    Now when users add a feature, they can choose one of these values from a list instead of typing their own.

  8. Click the Visualization tab to view the data on a map. Click a feature on the map to display a pop-up.

    The pop-up includes the fields and values for the reported coyote activity. You can change the default configuration to control what information the pop-up displays. You'll update the title.

  9. Close the pop-up. On the layer's toolbar, click the Configure Pop-up button.

    Layer's toolbar with a box around the Configure Pop-up button

  10. For Pop-up Title, replace the text with Coyotes and click OK. Click Save Layer.

    You can configure the layer here so it’s styled and filtered when users add it to a map. For better performance, however, you'll create a hosted feature layer view later and set a feature definition instead.

  11. Click the Settings tab. Enable delete protection and click Save.

    You can also configure editing capabilities here. Although you want city staff to edit this layer, you also want the community to contribute, so you'll create multiple views instead. Hosted feature layer views allow you to publish your feature layer once and create multiple views to meet different viewing and editing requirements. The views reference the same source feature layer so you avoid duplicating data. (Otherwise, if you publish multiple copies of the data with unique capabilities for each, you'd periodically need to merge them in ArcGIS Pro to keep them updated.)

  12. Return to the Overview tab.

Create a hosted feature layer view

You identified three audience needs for your data: public viewing, public contributing, and city staff viewing, contributing, and updating. First, you'll create a view for city staff who need to report coyote activity and see all recent reports.

  1. Click Create View Layer.

    Layer actions on the Overview tab with a box around the Create View Layer button

  2. In the window that appears, change the title to Coyotes_Oakville_Staff so the intended audience is evident. If necessary, add your initials to the end to make it unique within the organization. Accept the default tags and summary from the hosted feature layer and click OK.

    It takes a moment to create the view and publish the layer. The page refreshes and displays the item page for the new view.

  3. On the item page, update the item details. For the Terms of Use and Credits (Attribution) fields, use the same text as the hosted feature layer. For the Description field, type City staff can use this layer to view, add, and update recently reported coyote activity in Oakville.
  4. Click the Data and Visualization tabs and note that they look the same as the source hosted feature layer.

    Map of points showing reported coyote activity

Configure how others can use the data

You can set view definitions to hide fields that you don't want people to see or show only a subset of the features in the overall dataset.

  1. On the Visualization tab, click the More Options button and choose Set View Definition > Define Features.

    More Options menu for the layer with Set View Definition selected and a box around the Define Features option

    You'll set a definition on the view to show only recently reported activity. For this scenario, data collected in 2018 is considered recent data.

  2. In the Define Features window, use the menus to build the expression Date_of_observation is after 12/31/17.

    Define Features window with the completed expression

  3. Click Apply Definition.

    Map of reported coyote activity that meets the defined criteria

    The map updates to show fewer features—only those with attributes that match the criteria of the view definition. It's possible someone may report a coyote sighting without providing a date. You'll edit the view definition to include blank date fields.

  4. Open the Define Features window again and click the Edit tab. Click Add another expression and build the expression Date_of_observation is blank.

    The view should include features that meet the criteria of either expression rather than the default setting to meet the criteria of both expressions.

  5. Above the two expressions, change the match setting to Only features that match any of the following expressions will be available.
    Define Features window with the second expression and updated match setting
  6. Click Apply Definition.

    The publisher of the feature layer (or the administrator in your organization) decides whether a feature layer is editable and sets the editing capabilities. Before sharing data with the public, you want to confirm that it’s been reviewed. To support your review process, you’ll enable full editing access on the view so city staff can add features, delete duplicate and accidental submissions, and moderate reports by editing inappropriate information.

  7. Click the Settings tab. Enable full editing access as follows:
    1. In the Feature Layer (hosted, view) section, check Enable editing.
    2. In the additional options that appear, accept the default values.

      OptionDefault value

      What kind of editing is allowed?

      Add, delete, and update feature attributes and geometry

      What features can editors see?

      Editors can see all features

      What features can editors edit?

      Editors can edit all features

      What access do anonymous editors (not signed in) have?*

      The same as signed in editors

      In this case, this hosted feature layer view is not shared with the public; therefore, this option does not affect what people can do with the view.

    3. Click Save.
  8. Click the Overview tab. In the Details section, next to Created from, click the Coyotes_Oakville link to return to the item page for the hosted feature layer.

    Details section of the item page with a box around the source layer link

Create and configure more views

The next two views you’ll create are to inform and engage the public. One view can be added to a public awareness app to show areas with a high density of reported activity to emphasize areas with a higher risk of coyote encounters. The final view can be added to a crowd sourcing app to allow the public to report coyote sightings.

  1. Create a hosted feature layer view with the title Coyotes_Oakville_PublicView (appending your initials if necessary). As before, accept the default values for the tags and summary and update the item details in the same way. For the description, type Reported coyote activity in Oakville.
  2. Click the Visualization tab. Set a definition on the view to prevent the public from seeing a feature before it goes through the review process. Use the following expression: Review_status is Complete.

    For the expression builder, select Unique to choose from a list of known attribute values for the selected field.

    All available features in this view have a Review_status value of Complete, so it's not useful to show this internal field to the public.

  3. Click the More Options button and choose Set View Definition > Define Fields. In the window that appears, uncheck the Review_status box and click Apply.

    Field list in the Define Fields window with the Review_status box unchecked

    The last view you'll create is for the community to report coyote activity. They won't need to see any current data. They just need access to a layer to add a new feature and attributes that describe what they observed and when. For this view, you'll restrict their ability to see features for reported activity, including their own.

  4. Create and configure a view named Coyotes_Oakville_PublicReports.
    1. Update the item details like the others. For the description, type The community can use this layer to report coyote activity in Oakville.
    2. Set a definition on the view that hides the Review_status field.
    3. Enable editing and select Add so community members can only add a feature for new observations. For What features can editors see, select Editors can't see any features, even those they add.
    4. Leave the default settings for What features can editors edit and What access do anonymous editors (not signed in) have?. Note that you will share the Coyotes_Oakville_PublicReports with the public and, therefore, the latter setting allows all members of the public to contribute to this view.
    5. Click Save.

Add layers and edit data

Now that you've created multiple views to meet different viewing and editing requirements, you’ll add them to a map. You can test how the different views will work in practice and confirm that you set them up correctly. You’ll update data by adding and deleting features, noting the latest updates in applicable views.

  1. Return to the My Content tab on the Content page.

    When you complete this lesson, you can delete the items here by checking the boxes and clicking Delete.

  2. For Coyotes_Oakville_PublicReports, click the options button and choose Add to new map.

    The map doesn't display any points because you configured this layer to only allow users to add features.

  3. Click the Edit button. In the Add Features pane, click New Feature, and click the map to add a point in the water (so you can easily find your test points). In the pop-up that appears, fill in the fields, and then close the pop-up.

    Edits that you make in Map Viewer are automatically saved to the layer.

  4. After you finish adding test points, close the Add Features pane. In the Contents pane, uncheck the layer.
  5. Click the Add button and choose Search for Layers. Use the item browser to find Coyotes_Oakville_PublicView and add it to the map.

    The map updates to show points for reported coyote activity. You don't see the new features that you added because you configured this view to only show features that have gone through the review process.

  6. Click features on the map to display pop-ups.
    Map of reported coyote activity with a pop-up that displays fields and attribute values for one of the points

    The Review_status field doesn’t appear because you set a field definition for this view. You also don’t see an option to edit the layer or attributes because it’s not an editable layer.

  7. Add the Coyotes_Oakville_Staff layer to the map.
  8. Click the Back button to close the item browser. In the Contents pane, uncheck the Coyotes_Oakville_PublicView layer.

    Map of recently reported coyote activity

    The staff layer only displays recently reported activity, including the new features you added using the public layer. You configured this layer with full editing capabilities, including update and delete.

  9. Click the Edit button and click a point that you added in the water to view its pop-up.
  10. In the pop-up, click Delete to remove the feature from the map and the data.

    You don't need to save the map to save your edits.

After deleting test features, you're ready to share the public views with everyone and the staff view with your organization or applicable groups. When you share an editable layer with the organization (or a group), only members who are assigned a role with editing privileges can edit the feature layer. For more information, see Share items and Data access and editing.

In 25 minutes, you published data as a hosted feature layer and created multiple views with different editing capabilities to meet the requirements of your crowdsourcing solution. What's next?

Configure focused apps using the hosted feature layer views that you created. A few suggestions are as follows:

Complete another lesson to learn how to create a web app from a map. To find more scenario-based lessons, browse the Learn ArcGIS gallery. You can also visit The ArcGIS Book and The ArcGIS Imagery Book websites.