Parsers
Parsers turn raw session activity into structured analysis outputs. Learn what the built-in parsers produce and how to work with derived data in LaBrowser.
Configuration is usually set up for you
What Are Parsers
Parsers turn raw session activity into structured summaries that are easier to analyze than raw event streams. In LaBrowser, parser output appears as derived data attached to a study.
For example, instead of manually reading through dozens of search-related events, a parser can give you a clean list of search queries, result clicks, and dwell times. Instead of reconstructing a ChatGPT conversation event by event, it can give you prompts, responses, and conversation-level counts.
Built-in: Google Search
The Google Search parser summarizes how a participant searched, what results they clicked, and how long they spent on the pages they opened from search results.
What it extracts
- Search queries so you can see what participants actually searched for
- Search results pages so you can trace the search context
- Result clicks including destination hostnames and dwell times
- Session-level summaries that make it easier to compare search behavior across participants
Example output
{
"query": "climate change effects on agriculture",
"serp_url": "https://www.google.com/search?q=climate+change+effects+on+agriculture",
"result_clicks": [
{
"url": "https://en.wikipedia.org/wiki/Effects_of_climate_change_on_agriculture",
"hostname": "en.wikipedia.org",
"click_timestamp": "2025-01-15T10:30:12.000Z",
"dwell_ms": 45200
},
{
"url": "https://www.nature.com/articles/s41558-021-01000-1",
"hostname": "www.nature.com",
"click_timestamp": "2025-01-15T10:31:02.000Z",
"dwell_ms": 120800
}
],
"session_duration_ms": 182000
}Built-in: ChatGPT Session
The ChatGPT parser summarizes prompts and responses into conversation-level outputs so you can analyze how participants used ChatGPT without reconstructing each exchange by hand.
What it extracts
- Prompts with timestamps
- Responses attached to those prompts when LaBrowser can match them
- Conversation groupings so multi-prompt sessions stay together
- Counts and truncation flags for high-level analysis
Example output
{
"prompts": [
{
"text": "What are the main effects of climate change on crop yields?",
"timestamp": "2025-01-15T10:35:00.000Z",
"response": {
"text": "Climate change affects crop yields through several key mechanisms...",
"timestamp": "2025-01-15T10:35:22.000Z",
"char_count": 1847,
"truncated": false
}
},
{
"text": "Can you summarize the key studies on wheat yield projections?",
"timestamp": "2025-01-15T10:36:10.000Z",
"response": {
"text": "Several major studies have modeled wheat yield projections...",
"timestamp": "2025-01-15T10:36:35.000Z",
"char_count": 2103,
"truncated": false
}
}
],
"prompt_count": 2,
"response_count": 2,
"any_response_truncated": false,
"conversation_url": "https://chat.openai.com/c/abc123"
}Running Parsers
To run parsers on your study data, open the Study Console, select a study, and click Run Parsers. You can choose which parsers to apply and whether to run them on all sessions or only specific ones.
- Select one or more parsers from the available list
- Optionally filter to specific sessions (e.g. only completed sessions, or a single participant)
- Click Run to start processing
- Results appear as derived sessions once parsing completes
Parsers can be re-run at any time. When you re-run a parser on a session that already has derived data from that parser, the old results are replaced with the new ones.
Viewing Derived Data
Derived sessions appear in the Derived tab of the study view. Each derived session shows:
- The parser that created it (e.g.
google_search_v1) - The source session it was derived from
- Creation and update timestamps
- The structured payload with the extracted data
Derived data can be exported as JSON or CSV for analysis in external tools like R, Python, or Excel.
Custom Parsers
If the built-in parsers do not cover your study, contact the LaBrowser team about adding a parser tailored to your analysis needs.