On this page

Audit log

The Audit Log tracks security events and user actions across your Amplitude organization, including who did what, when, and from which IP address. Organization admins use it to monitor configuration changes, user access, and authentication activity.

Tracked events by category

The Audit Log tracks the following events:

Data captured per event

Each audit log entry includes:

Availability through the API

You can only access IP address, Org ID, User Agent, and Error metadata through the API endpoint, not the UI CSV export.

Key behaviors and notes

  • Audit logs retain up to 90 days of data.
  • Audit logging is asynchronous and doesn't block the user's original action.
  • Amplitude captures events automatically; you don't need to add instrumentation.
  • The audit log scopes to the organization.
  • Admins can access events across all projects in their org.
  • You can search audit logs by user email in the UI.
  • Audit logs exist in all production environments, including US and EU.

Accessing audit logs

You can access audit logs from the Organization Settings page in Amplitude or through the Audit Logs API.

Access audit logs in the UI

  1. Navigate to Organization Settings.
  2. Select the Audit Logs tab.

Only organization admins can access the Audit Log menu item.

Summary cards

At the top of the Audit Logs view, summary cards show counts for the time period selected in the date picker:

High-risk events table

A filtered table shows only high-risk security events, such as promoting a user to org admin or updating organization link settings. You can search and sort this table.

Controls

Access audit logs through the API

For programmatic access to the full raw audit log, use the REST API endpoint to query and download raw audit logs.

Obtain an org secret key

Before you use the API, request an organization secret key. Contact Amplitude Customer Support and provide your organization ID. After Support generates your key, you can use it to authenticate and download audit logs securely.

Make the API request

Endpoint:

http
POST https://amplitude.com/api/2/audit-logs/<ORG_ID>

Example request:

bash
curl -X POST "https://amplitude.com/api/2/audit-logs/76273" \
  -H "Authorization: Basic Base64<ORG_API_KEY:ORG_SECRET_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "start_date": "2025-11-01T00:00:00Z",
    "end_date": "2025-11-10T23:59:59Z",
    "filters": {
      "domain": "auth",
      "feature": "auth",
      "action": "login"
    },
    "pagination": {
      "limit": 100
    }
  }'

Required parameters

All other fields (filters, pagination) are optional and refine your query.

API limitations

  • Maximum 30-day query range for each request.
  • 90-day data retention: You can access only the last 90 days of audit log data.

Was this helpful?