Skip to main content

List Insights

Retrieve a list of all insights (saved charts and analyses) in your PostHog project. Supports filtering by type, dashboard, tags, and more.

Endpoint

Path Parameters

integer
required
The ID of the project to retrieve insights from

Query Parameters

boolean
Filter by saved status:
  • true - Only saved insights (or insights on dashboards)
  • false - Only unsaved/temporary insights
string
Filter by insight type:
  • TRENDS - Trends analysis
  • FUNNELS - Conversion funnels
  • RETENTION - Retention analysis
  • PATHS - User path analysis
  • STICKINESS - Stickiness/engagement
  • LIFECYCLE - Lifecycle analysis
  • SQL - SQL/HogQL queries
  • JSON - Custom JSON insights
Search insights by name, description, or tags (case-insensitive)
string
JSON array of dashboard IDs to filter by. Returns insights on ANY of the specified dashboards.Example: [123, 456]
string
JSON array of tag names to filter byExample: ["marketing", "product"]
boolean
If true, filter to insights created by the current user
boolean
If true, filter to favorited insights only
string
JSON array of user IDs to filter by creatorExample: [123, 456]
string
Filter insights modified after this date (relative date format like -7d or ISO 8601)
string
Filter insights modified before this date
string
Sort order:
  • order (default) - Manual ordering
  • -last_viewed_at - Most recently viewed first
  • last_viewed_at - Least recently viewed first
integer
default:100
Maximum number of results to return
integer
default:0
Number of results to skip (for pagination)
boolean
default:false
If true, return basic metadata only (no query results, faster response)
string
How to handle result calculation:
  • force_cache - Return cached data only
  • blocking - Calculate synchronously if needed
  • async - Kick off background calculation if needed
  • lazy_async - Background calculation for stale cache
  • force_blocking - Always calculate synchronously
  • force_async - Always kick off background calculation

Response Fields

array
Array of insight objects
integer
Unique identifier for the insight
string
Short, human-readable ID (used in URLs)
string
Name of the insight
string
Auto-generated name if no explicit name provided
string
Description of the insight
object
Query definition for this insight
any
Query results (if not using basic=true)
object
User who created the insight
string
ISO 8601 timestamp of creation
string
ISO 8601 timestamp of last modification
string
ISO 8601 timestamp of when results were calculated
boolean
Whether this insight is saved
boolean
Whether this insight is favorited
array
Array of dashboard IDs this insight is on
array
Array of tags applied to this insight
integer
Total number of insights matching filters
string
URL for next page of results
string
URL for previous page of results

Examples

List All Insights

Retrieve all saved insights with basic metadata:

Filter by Type

Retrieve only funnel insights:

Search Insights

Search for insights by name or description:

Filter by Dashboard

Get insights on specific dashboards:

Recently Viewed Insights

Get insights sorted by most recently viewed:

Response

Error Responses

error
Invalid or missing API key
error
Insufficient permissions to view insights
error
Project not found

Notes

  • Use basic=true for faster responses when you only need metadata
  • Results are paginated with a default limit of 100
  • Deleted insights are excluded from results
  • The refresh parameter controls whether and how to recalculate results
  • Use force_cache for fastest responses (may return stale data)
  • Multiple filters are combined with AND logic
  • Search is case-insensitive and matches partial strings