From carta-fund-admin
Compare a fund's performance against peer benchmark cohorts. Use when asked about fund benchmarks, peer comparison, percentile ranking, Net IRR vs peers, TVPI benchmarks, or how a fund stacks up against its cohort.
npx claudepluginhub carta/pluginsThis skill uses the workspace's default tool permissions.
Compare a fund's historical Net IRR, TVPI, MOIC, or DPI against peer benchmark cohorts grouped by vintage year, AUM bucket, and entity type.
Conducts multi-round deep research on GitHub repos via API and web searches, generating markdown reports with executive summaries, timelines, metrics, and Mermaid diagrams.
Dynamically discovers and combines enabled skills into cohesive, unexpected delightful experiences like interactive HTML or themed artifacts. Activates on 'surprise me', inspiration, or boredom cues.
Generates images from structured JSON prompts via Python script execution. Supports reference images and aspect ratios for characters, scenes, products, visuals.
Compare a fund's historical Net IRR, TVPI, MOIC, or DPI against peer benchmark cohorts grouped by vintage year, AUM bucket, and entity type.
fund_name is required — ask if not providedlist_contexts and set_context to set the firm| Parameter | Default | Description |
|---|---|---|
metric | net_irr | One of: net_irr, tvpi, moic, dpi |
vintage_year | Auto-resolved from fund | Filter cohort by vintage year |
aum_bucket | Auto-resolved from fund | Filter by AUM bucket (e.g. "25m-100m") |
entity_type | Auto-resolved from fund | "Fund" or "SPV" |
start_date | All history | Only show quarters on/after this date (YYYY-MM-DD) |
Query the FUND_ADMIN.TEMPORAL_FUND_COHORT_BENCHMARKS table which contains fund metrics, benchmark percentiles, and cohort size in one denormalized table.
Execute this query with fetch("dwh:execute:query", {"sql": "..."}), substituting the user's fund name and optional filters:
SELECT
fund_name,
fund_uuid,
performance_quarter_start_date AS quarter,
vintage_year,
fund_aum_bucket,
entity_type_name,
fund_count,
net_irr, tvpi, dpi, moic,
net_irr_10th, net_irr_25th, net_irr_50th, net_irr_75th, net_irr_90th,
tvpi_10, tvpi_25, tvpi_50, tvpi_75, tvpi_90,
dpi_10, dpi_25, dpi_50, dpi_75, dpi_90,
moic_10, moic_25, moic_50, moic_75, moic_90
FROM FUND_ADMIN.TEMPORAL_FUND_COHORT_BENCHMARKS
WHERE LOWER(fund_name) ILIKE '%{fund_name}%'
AND performance_quarter_start_date >= '{start_date}'
-- Add optional filters:
-- AND vintage_year = {vintage_year}
-- AND fund_aum_bucket = '{aum_bucket}'
-- AND entity_type_name = '{entity_type}'
ORDER BY performance_quarter_start_date
LIMIT 1000
Important: Build the WHERE clause dynamically — only include filters the user provided. Omitted filters are auto-resolved from the data.
If the query returns rows for more than one distinct fund_name, list them and ask the user to be more specific:
Multiple funds matched "[search term]":
- Fund I
- Fund II
Please use a more specific fund name.
| Metric | Column | Format | Percentile Columns |
|---|---|---|---|
| Net IRR | net_irr | Percentage (e.g. 8.0%) | net_irr_10th through net_irr_90th |
| TVPI | tvpi | Multiple (e.g. 1.85x) | tvpi_10 through tvpi_90 |
| MOIC | moic | Multiple (e.g. 2.10x) | moic_10 through moic_90 |
| DPI | dpi | Multiple (e.g. 0.42x) | dpi_10 through dpi_90 |
Based on the fund's value relative to benchmarks in the latest quarter:
| Condition | Label |
|---|---|
| Fund ≥ 90th percentile | Top 10th percentile |
| Fund ≥ 75th percentile | 75th–90th percentile |
| Fund ≥ 50th percentile | 50th–75th percentile (above median) |
| Fund ≥ 25th percentile | 25th–50th percentile (below median) |
| Fund < 25th percentile | Bottom 25th percentile |
Use the latest quarter (last row) for the summary, all rows for the timeline.
| Fund | {fund_name} |
| Metric | {metric_label} |
| Vintage Year | {vintage_year} |
| AUM Bucket | {aum_bucket} |
| Entity Type | {entity_type} |
| Date Range | {first_quarter} – {last_quarter} |
| Benchmark Sample Size | {fund_count} funds |
| {metric_label} | |
|---|---|
| {fund_name} | {fund_value} |
| Benchmark Median (50th pct) | {p50} |
| Benchmark 75th pct | {p75} |
| Benchmark 90th pct | {p90} |
| Fund Percentile Band | {band_label} |
| Quarter | {fund_name} | 10th pct | 25th pct | Median | 75th pct | 90th pct | Cohort (n) |
|---|---|---|---|---|---|---|---|
| 2023-01-01 | 8.5% | 2.1% | 5.0% | 7.8% | 10.2% | 14.5% | 45 |
X.X% (values are stored as percentage points, e.g. 8.0 = 8%)X.XXx— for null values