Skip to main content
GET
/
api
/
websites
/
:id
/
funnels
/
:funnel_id
/
results
Get Funnel Results
curl --request GET \
  --url https://api.example.com/api/websites/:id/funnels/:funnel_id/results
{
  "data": {
    "funnel_id": "<string>",
    "name": "<string>",
    "total_sessions_entered": 123,
    "final_conversion_rate": 123,
    "steps": [
      {
        "step_order": 123,
        "label": "<string>",
        "sessions_reached": 123,
        "drop_off_count": 123,
        "drop_off_rate": 123,
        "conversion_rate_from_start": 123,
        "conversion_rate_from_previous": 123
      }
    ]
  }
}

Path Parameters

id
string
required
Website ID
funnel_id
string
required
Funnel ID

Query Parameters

start_date
string
required
Start date in YYYY-MM-DD format.
end_date
string
required
End date in YYYY-MM-DD format.
timezone
string
IANA timezone string (e.g., America/New_York). Required for accurate date boundary calculations.
include_bots
boolean
Whether to include bot traffic in results. Defaults to website’s bot policy setting.

Filter Parameters

filter_country
string
ISO 3166-1 alpha-2 country code.
filter_page
string
Filter by page URL path.
filter_referrer
string
Filter by referrer domain.
filter_browser
string
Filter by browser name.
filter_os
string
Filter by operating system.
filter_device
string
Filter by device type.
filter_language
string
Filter by browser language.
filter_utm_source
string
Filter by UTM source parameter.
filter_utm_medium
string
Filter by UTM medium parameter.
filter_utm_campaign
string
Filter by UTM campaign parameter.
filter_region
string
Filter by geographic region/state.
filter_city
string
Filter by city name.
filter_hostname
string
Filter by hostname.

Response

data
object
Funnel analysis results.
funnel_id
string
The ID of the funnel.
name
string
The name of the funnel.
total_sessions_entered
integer
Total number of sessions that entered the funnel (reached the first step).
final_conversion_rate
number
Percentage of sessions that completed all steps (0-100).
steps
array
Array of step results in order.
step_order
integer
Step position (1-based index).
label
string
Human-readable label for this step.
sessions_reached
integer
Number of sessions that reached this step.
drop_off_count
integer
Number of sessions that dropped off after this step.
drop_off_rate
number
Percentage of sessions that dropped off at this step (0-100).
conversion_rate_from_start
number
Percentage of initial sessions that reached this step (0-100).
conversion_rate_from_previous
number
Percentage of sessions from the previous step that reached this step (0-100).

Example Request

curl -X GET "https://analytics.example.com/api/websites/abc123/funnels/funnel_xyz/results?start_date=2024-03-01&end_date=2024-03-07&timezone=America/New_York" \
  -H "Authorization: Bearer spk_live_your_api_key"

Example Response

{
  "data": {
    "funnel_id": "funnel_xyz",
    "name": "Signup Flow",
    "total_sessions_entered": 2543,
    "final_conversion_rate": 24.3,
    "steps": [
      {
        "step_order": 1,
        "label": "Landing Page",
        "sessions_reached": 2543,
        "drop_off_count": 891,
        "drop_off_rate": 35.0,
        "conversion_rate_from_start": 100.0,
        "conversion_rate_from_previous": 100.0
      },
      {
        "step_order": 2,
        "label": "Pricing Page",
        "sessions_reached": 1652,
        "drop_off_count": 542,
        "drop_off_rate": 32.8,
        "conversion_rate_from_start": 65.0,
        "conversion_rate_from_previous": 65.0
      },
      {
        "step_order": 3,
        "label": "Signup Form",
        "sessions_reached": 1110,
        "drop_off_count": 321,
        "drop_off_rate": 28.9,
        "conversion_rate_from_start": 43.6,
        "conversion_rate_from_previous": 67.2
      },
      {
        "step_order": 4,
        "label": "Account Created",
        "sessions_reached": 789,
        "drop_off_count": 171,
        "drop_off_rate": 21.7,
        "conversion_rate_from_start": 31.0,
        "conversion_rate_from_previous": 71.1
      },
      {
        "step_order": 5,
        "label": "First Project Created",
        "sessions_reached": 618,
        "drop_off_count": 0,
        "drop_off_rate": 0.0,
        "conversion_rate_from_start": 24.3,
        "conversion_rate_from_previous": 78.3
      }
    ]
  }
}

Rate Limits

This endpoint has stricter rate limits due to computational complexity:
  • 10 requests per minute per client IP
  • 20 requests per minute per website
  • Concurrent query limit enforced via semaphore (5 second wait timeout)

Constraints

  • Date range is limited to 90 days maximum
  • Default date range is 30 days if not specified
  • Funnels must have between 2 and 8 steps
  • Maximum of 20 funnels per website

Notes

  • Funnel analysis is session-based (tracks user journeys within sessions)
  • Steps must occur in order within a session to count as progression
  • The final step has a drop_off_count of 0 and drop_off_rate of 0
  • conversion_rate_from_start shows what percentage of initial sessions reached each step
  • conversion_rate_from_previous shows the step-to-step conversion rate
  • Timezone parameter is recommended for accurate date boundary alignment

Build docs developers (and LLMs) love