---
title: "iOS PDF viewer analytics events | Nutrient SDK"
canonical_url: "https://www.nutrient.io/guides/ios/events-and-notifications/events/"
md_url: "https://www.nutrient.io/guides/ios/events-and-notifications/events.md"
last_updated: "2026-05-23T00:08:18.107Z"
description: "An event has a name and a dictionary of additional parameters. Event parameters are of standard, JSON-friendly types. for Nutrient iOS SDK."
---

# Analytics events

An event has a name and a dictionary of additional parameters. Event parameters are of standard, JSON-friendly types.

All Nutrient event names are prefixed with `pspdf_` and use `underscore_case`.

You can find the complete list of Nutrient events and parameters in the `PSPDFAnalyticsEvents.h` header and in the list below.

- [`PDFAnalytics.EventName.documentLoad`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/documentload) (raw value: `pspdf_load_document`)

  This signifies that the user has loaded a document.

  No attributes.

- [`PDFAnalytics.EventName.spreadChange`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/spreadchange) (raw value: `pspdf_change_spread`)

  This signifies that spread was changed.

  No attributes.

- [`PDFAnalytics.EventName.annotationCreationModeEnter`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationcreationmodeenter) (raw value: `pspdf_enter_annotation_creation_mode`)

  This signifies that the user opened the annotation toolbar.

  No attributes.

- [`PDFAnalytics.EventName.annotationCreationModeExit`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationcreationmodeexit) (raw value: `pspdf_exit_annotation_creation_mode`)

  This signifies that the user closed the annotation toolbar.

  No attributes.

- [`PDFAnalytics.EventName.annotationCreatorDialogShow`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationcreatordialogshow) (raw value: `pspdf_show_annotation_creator_dialog`)

  This signifies that the annotation creator dialog was shown to the user.

  No attributes.

- [`PDFAnalytics.EventName.annotationCreatorDialogCancel`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationcreatordialogcancel) (raw value: `pspdf_cancel_annotation_creator_dialog`)

  This signifies that the annotation creator dialog was canceled by the user.

  No attributes.

- [`PDFAnalytics.EventName.annotationCreatorSet`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationcreatorset) (raw value: `pspdf_set_annotation_creator`)

  This signifies that the annotation creator dialog was confirmed by the user, thereby setting a creator name.

  No attributes.

- [`PDFAnalytics.EventName.annotationSelect`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationselect) (raw value: `pspdf_select_annotation`)

  This signifies that the user selected an annotation, e.g. by tapping it.

  Attributes:

  - Key: `PDFAnalytics.EventAttributeName.anotationType`. Value: `Annotation.Tool` of the selected annotation.

- [`PDFAnalytics.EventName.annotationCreate`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationcreate) (raw value: `pspdf_create_annotation`)

  This signifies that the user created an annotation and added it to the document.

  Attributes:

  - Key: `PDFAnalytics.EventAttributeName.anotationType`. Value: `Annotation.Tool` of the created annotation.

- [`PDFAnalytics.EventName.annotationDelete`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationdelete) (raw value: `pspdf_delete_annotation`)

  This signifies that the user deleted an annotation from the document.

  Attributes:

  - Key: `PDFAnalytics.EventAttributeName.annotationType`. Value: `Annotation.Tool` of the deleted annotation.

- [`PDFAnalytics.EventName.annotationInspectorShow`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/annotationinspectorshow) (raw value: `pspdf_show_annotation_inspector`)

  This signifies that the user opened the annotation inspector for editing annotation properties, either via the annotation toolbar or by editing an existing annotation.

  No attributes.

- [`PDFAnalytics.EventName.textSelect`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/textselect) (raw value: `pspdf_select_text`)

  This signifies that the user has selected text on the document.

  No attributes.

- [`PDFAnalytics.EventName.outlineOpen`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/outlineopen) (raw value: `pspdf_open_outline_view`)

  This signifies that the user opened the outline containing the document outline, annotations, and bookmarks.

  No attributes.

- [`PDFAnalytics.EventName.outlineElementSelect`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/outlineelementselect) (raw value: `pspdf_tap_outline_element_in_outline_list`)

  This signifies that the user tapped an outline element in the outline view.

  No attributes.

- [`PDFAnalytics.EventName.outlineAnnotationSelect`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/outlineannotationselect) (raw value: `pspdf_tap_annotation_in_outline_list`)

  This signifies that the user tapped an annotation in the outline view.

  Attributes:

  - Key: `PDFAnalytics.EventAttributeName.annotationType`. Value: `Annotation.Tool` of the selected annotation.

- [`PDFAnalytics.EventName.thumbnailGridOpen`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/thumbnailgridopen) (raw value: `pspdf_open_thumbnail_grid`)

  This signifies that the user opened the thumbnail grid view.

  No attributes.

- [`PDFAnalytics.EventName.documentEditorOpen`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/documenteditoropen) (raw value: `pspdf_open_document_editor`)

  This signifies that the user opened the Document Editor.

  No attributes.

- [`PDFAnalytics.EventName.documentEditorAction`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/documenteditoraction) (raw value: `pspdf_perform_document_editor_action`)

  This signifies that the user performed an action inside the Document Editor.

  Attributes:

  - Key: `PDFAnalytics.EventAttributeName.action`. Value: One of the `PDFAnalytics.EventAttributeValue.action..`s that was performed by the user. For example, `PDFAnalytics.EventAttributeValue.actionInsertNewPage`.

- [`PDFAnalytics.EventName.bookmarkAdd`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/bookmarkadd) (raw value: `pspdf_add_bookmark`)

  This signifies that the user added a bookmark to the document.

  No attributes.

- [`PDFAnalytics.EventName.bookmarkEdit`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/bookmarkedit) (raw value: `pspdf_edit_bookmarks`)

  This signifies that the user has entered bookmark-editing mode inside the bookmark list.

  No attributes.

- [`PDFAnalytics.EventName.bookmarkRemove`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/bookmarkremove) (raw value: `pspdf_remove_bookmark`)

  This signifies that the user has deleted a bookmark from the document.

  No attributes.

- [`PDFAnalytics.EventName.bookmarkSort`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/bookmarksort) (raw value: `pspdf_sort_bookmark`)

  This signifies that the user changed the order of a bookmark item in the bookmark list.

  No attributes.

- [`PDFAnalytics.EventName.bookmarkRename`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/bookmarkrename) (raw value: `pspdf_rename_bookmark`)

  This signifies that the user renamed a bookmark.

  No attributes.

- [`PDFAnalytics.EventName.bookmarkSelect`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/bookmarkselect) (raw value: `pspdf_tap_bookmark_in_bookmark_list`)

  This signifies that the user tapped a bookmark in the bookmark list.

  No attributes.

- [`PDFAnalytics.EventName.searchStart`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/searchstart) (raw value: `pspdf_start_search`)

  This signifies that the user started a search in the document e.g. by pressing the search icon.

  No attributes.

- [`PDFAnalytics.EventName.searchResultSelect`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/searchresultselect) (raw value: `pspdf_select_search_result`)

  This signifies that the user selected a search result after searching the document.

  No attributes.

- [`PDFAnalytics.EventName.share`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/share) (raw value: `pspdf_share`)

  This signifies that the user shared the document using the share sheet.

  Attributes:

  - Key: `PDFAnalytics.EventAttributeName.activityType`. Value: Activity type the user selected as string.

- [`PDFAnalytics.EventName.toolbarMove`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname/toolbarmove) (raw value: `pspdf_move_toolbar`):
  This signifies that the toolbar was moved to a different location.

  Attributes:

  - Key: `PDFAnalytics.EventAttributeValue.toolbarPosition`.
  - Value: `FlexibleToolbar.Position` of the destination.

### Custom events

The Nutrient events pipeline can also be used to deliver custom events.

Extend the [`PDFAnalytics.EventName`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics/eventname) type with your custom events:

### SWIFT

```swift

extension PDFAnalyticsEventName {
    static var someCustomAction = PDFAnalyticsEventName(rawValue: "some_custom_action")
}

```

### OBJECTIVE-C

```objc

PSPDF_EXPORT PSPDFAnalyticsEventName const PSPDFAnalyticsEventNameSomeCustomAction; // in *.h
PSPDFAnalyticsEventName const PSPDFAnalyticsEventNameSomeCustomAction = @"some_custom_action"; // in *.m

```

Then use the [`PDFAnalytics`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalytics) object to deliver them:

### SWIFT

```swift

PSPDFKit.SDK.shared.analytics.logEvent(.someCustomAction)

```

### OBJECTIVE-C

```objc

[PSPDFKitGlobal.sharedInstance.analytics logEvent:PSPDFAnalyticsEventNameSomeCustomAction];

```

The event in the above example will be dispatched to all registered [`PDFAnalyticsClient`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfanalyticsclient) instances.
---

## Related pages

- [iOS PDF annotation events and notifications](/guides/ios/events-and-notifications/annotation.md)
- [iOS PDF form updates and notifications guide](/guides/ios/events-and-notifications/forms.md)
- [Events and notifications](/guides/ios/events-and-notifications.md)
- [Analytics](/guides/ios/features/analytics.md)
- [Text selection events and notifications](/guides/ios/events-and-notifications/text-selection.md)

