Open source toolkit to analyze your ChatGPT/Claude usage from exports A new open-source toolkit enables users to analyze their personal ChatGPT and Claude usage data entirely offline, processing official export files to generate model adoption timelines, topic breakdowns, and prompt engineering effectiveness metrics. The tool, available on GitHub, also computes cost efficiency metrics like Productive Output per Dollar (POD) and includes three methodology papers for quantifying practice hours and usage profiles. All analysis runs locally with no data leaving the user's machine, addressing privacy concerns around AI usage tracking. Privacy-first tools for analyzing your personal LLM usage from official ChatGPT and Claude exports. Everything runs locally. Nothing leaves your machine. Turn your raw export data into: model adoption timelines, topic breakdowns, prompt engineering effectiveness metrics, cost efficiency analysis, and formatted reports. git clone https://github.com/noah-chelednik/llm-export-analytics.git cd llm-export-analytics ./run pipeline.sh --sample This runs the full pipeline against included sample data so you can see what it produces before using your own exports. Model adoption timeline shows which AI models you used and when you switched: 2025-01 ████████████████████████████████ GPT-4o 100% 2025-02 ██████████████████████████ GPT-5 66% ████ GPT-4o 21% 2025-03 ████████████████████████ GPT-5.2-T 78% ████ GPT-5 22% Prompt technique tracking measures how your prompting style evolves over time: | Technique | Adoption Rate | First Appeared | |---|---|---| | Constraint specification | 6.5% | 2023-08 | | Context front-loading | 4.6% | 2024-02 | | Code inclusion | 2.7% | 2023-10 | | Multi-step instructions | 1.7% | 2023-11 | Cost efficiency computes your Productive Output per Dollar POD from subscription costs and total output words. Also computes quality-adjusted POE with sensitivity analysis. Plus: topic distribution, session dynamics, interaction style breakdown, conversation outcome classification, industry benchmark comparison, and more. Three methodology papers are included: - : Rigorous methodology for quantifying LLM practice hours from export data. Tiered claims with sensitivity analysis and stress testing. LLM Practice Hours Methodology GIT.pdf /noah-chelednik/llm-export-analytics/blob/main/LLM Practice Hours Methodology GIT.pdf - : Comprehensive data-driven usage profile covering model adoption 21 model versions , domain portfolio, prompt engineering effectiveness, and interaction patterns. Deep LLM Usage Analysis.pdf /noah-chelednik/llm-export-analytics/blob/main/docs/Deep LLM Usage Analysis.pdf - : The first standardized methodology for measuring individual LLM cost efficiency. Defines Productive Output per Dollar POD , Deliverable-Linked Output per Dollar DLOD , and quality-adjusted Productive Output Efficiency POE . Productive Output Efficiency.pdf /noah-chelednik/llm-export-analytics/blob/main/docs/Productive Output Efficiency.pdf scripts/ analyze chatgpt.py ChatGPT export normalization and basic stats analyze claude.py Claude export normalization and basic stats analyze combined.py Combined cross-platform analysis scripts/deep analysis/ extract chatgpt metadata.py Model versions, tools, branching, reasoning classify and link.py Topic classification + project attribution analyze effectiveness.py Prompt techniques, outcomes, interaction patterns generate tables and charts.py Formatted tables and ASCII charts compute pod.py Productive Output per Dollar compute dlod.py Deliverable-Linked Output per Dollar compute poe.py Quality-adjusted POE with sensitivity analysis compare benchmarks.py Industry benchmark comparison examples/ sample chatgpt export.json Synthetic sample data for testing sample claude export.json Synthetic sample data for testing templates/ example projects.json Example project config customize for your projects cost log template.json Template for subscription cost tracking deliverable inventory template.json Template for verified deliverables quality params.json Q coefficient configurations for POE benchmarks.json Curated industry benchmark data with citations docs/ DEEP ANALYSIS GUIDE.md Step-by-step guide to the full pipeline Deep LLM Usage Analysis.pdf Productive Output Efficiency.pdf Prompting One Pager.pdf results/ usage snapshot 2025-12-09.md Historical snapshot usage snapshot 2026-05-26.md Current snapshot ChatGPT: Settings Data controls Export data. You'll receive a ZIP containing conversations.json or multiple shards . Claude: Settings Account Export data. You'll receive a ZIP containing conversations.json . python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt python scripts/analyze chatgpt.py --input /path/to/conversations.json --out outputs --utc python scripts/analyze claude.py --input /path/to/conversations.json --out outputs --utc python scripts/analyze combined.py \ --chatgpt outputs/chatgpt messages normalized.csv \ --claude outputs/claude messages normalized.csv --utc Run the basic scripts with --include-content first, then see the Deep Analysis Guide /noah-chelednik/llm-export-analytics/blob/main/docs/DEEP ANALYSIS GUIDE.md for the full pipeline: model tracking, topic classification, prompt effectiveness, cost efficiency, and industry benchmarks. All processing is local. No network calls. No telemetry. By default, scripts produce privacy-minimized CSVs timestamps, IDs, roles only . Content analysis requires the explicit --include-content flag. Never commit or share CSVs generated with content enabled. ChatGPT: Reconstructs the primary conversation path from the mapping tree. Walks parent pointers from the current node back to root. Extracts per-message model metadata, tool usage, branching, and reasoning information. Claude: Extracts text blocks from content arrays. Normalizes roles to match the shared schema. Supports both web/app and Claude Code CLI sessions. Deep analysis: Adds topic classification via keyword taxonomy with content fallback, optional project attribution from user-provided config, prompt technique detection 10 techniques tracked , conversation outcome classification, interaction style analysis, and cost efficiency computation. - Results depend on platform export formats which may change - ChatGPT analysis reconstructs primary path only, not full conversation trees - Topic classification uses keyword matching expect 40-50% "Other" for casual conversation titles - Project attribution requires user-provided config and represents a lower bound - Cost metrics are designed for subscription pricing, not API pricing - Token counts are approximate and encoding-dependent This repository contains no platform export files and distributes no conversation data. It exists to make long-horizon LLM usage measurable, reproducible, and inspectable without turning private conversations into a dataset.