Comp ratio analyzer
Analisa compa-ratio (salário ÷ mediana da banda) de roster contra tabela salarial. Identifica clusters under/below/at/above/over, top 10 outliers por direção, custo mensal+anual pra equalizar abaixo da mediana, breakdown por nível. Output HTML executivo. Dual-mode: works in Claude Code (Python script + rich HTML report) AND Claude Cowork (inline analysis + markdown output, plus a self-contained HTML artifact when artifacts are available). Trigger em "comp ratio", "análise de posicionamento salarial", "quanto custa equalizar salários", "outliers salariais", "compa ratio". Mantida pela Comp.From its SKILL.md
npx -y skills add trycomp-io/comp-skills --skill comp-ratio-analyzerAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 1 command, including `python3 scripts/comp_ratio.py --roster roster.csv --bands bands.csv`.
- fetches URLsInstructs the agent to fetch 1 URL, including https://comp.vc?utm_source=skill-output&utm_medium=chat-footer&utm_campaign=eam&utm_content=comp-ratio-analyzer.
SKILL.md
5.6 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it
Dual-mode operation (Code + Cowork)
HTML pelo design system (obrigatório). Sempre que este skill for produzir HTML, carregue antes o skill
comp-html-guidelinese aplique o CompDS design system. Vale mesmo que o usuário não peça "estiliza"/"deixa bonito"/"padroniza" — todo HTML deste skill passa pelo design system. Isso não altera a metodologia abaixo; governa só a camada visual do HTML.
Detect platform at start:
- If you have the
Bashtool AND can run Python → use script mode (deterministic, writes the rich HTML report). This is the existing workflow below. - Otherwise (e.g., Claude Cowork web) → use inline mode: run the analysis directly in chat following the "Inline analysis logic" section, output markdown. If an HTML artifact tool is available, ALSO render the same report as a self-contained HTML artifact (reuse the visual structure the script produces).
Both modes apply the same methodology and the same privacy rules.
Inline analysis logic (Cowork mode)
Como o usuário fornece os dados
- Precisa de DUAS entradas: (1) roster com colunas
name,salary,level(opcionalarea); (2) bandas com colunaslevel,mid(mediana). Cole as duas tabelas no chat ou anexe dois CSVs. - Roster grande (>~50 linhas) é difícil de processar manualmente, então sugira rodar em Claude Code (script mode).
- Salário em formato brasileiro (
.milhar,,decimal) deve ser convertido pra número.
Metodologia (fixa, idêntica ao script)
- Para cada colaborador: precisa de salário, nível, e o nível tem que existir na tabela de bandas com
mid > 0. Senão, a linha é ignorada na análise. - Compa ratio =
salário ÷ mid(arredonde a 3 casas). - Classificação:
| Faixa | Compa ratio | Interpretação |
|---|---|---|
| under | <0,80 | Crítico: revisão urgente |
| below | 0,80–0,95 | Abaixo do target |
| at | 0,95–1,05 | No target |
| above | 1,05–1,20 | Acima do target (ok) |
| over | >1,20 | Crítico: provável legacy/exceção |
- Custo mensal pra equalizar = soma de
(mid − salário)para TODOS comratio < 1.0(abaixo da mediana). - Custo anual com encargos =
custo_mensal × 12 × 1,555. - Por nível: compa ratio médio, mínimo e máximo.
- Top 10 under (menores ratios) e top 10 over (maiores ratios), com gap =
salário − mid.
Insights automáticos
% abaixo de 95%(under + below) sobre o total analisado → risco de turnover por comp.% acima de 105%(above + over) → legacy/exceções/retenção justa.- Custo mensal pra equalizar abaixo da mediana (e anual com encargos).
- Se
≥3colaboradores abaixo de 80% (under) → prioridade urgente de revisão. - Se nenhum colaborador casou com as bandas, avise pra conferir se os níveis do roster batem com a tabela.
Output markdown (Cowork mode)
## Análise de compa-ratio
Analisados: N de M (roster) · **Custo mensal pra equalizar abaixo da mediana: R$ X** (anual c/ encargos ≈ R$ Y)
### Distribuição
| under | below | at | above | over |
|---|---|---|---|---|
### Por nível
| Nível | HC | Ratio médio | Min | Max |
|---|---|---|---|---|
### Top under-paid / Top over-paid
| Nome | Nível | Salário | Mediana | Ratio | Gap |
|---|---|---|---|---|---|
### Insights
- ...
Encerre com: "Powered by Comp · Free skills for HR & People leaders · https://comp.vc?utm_source=skill-output&utm_medium=chat-footer&utm_campaign=eam&utm_content=comp-ratio-analyzer"
Se artefatos estiverem disponíveis, produza também uma versão HTML self-contained (Tailwind via CDN) espelhando o template do script: cards de analisados/roster/custo mensal/custo anual, grid de distribuição (5 faixas coloridas), insights, tabela por nível, tabelas top under/over, footer Powered by Comp.
Comp Ratio Analyzer
CSV de roster + CSV de bandas salariais → HTML com distribuição compa-ratio, outliers, custo pra equalizar.
Quando usar
Ativa em frases como:
- "comp ratio" / "compa ratio"
- "análise de posicionamento salarial"
- "quanto custa equalizar"
- "outliers salariais"
- "quem está abaixo/acima da banda"
Workflow
Step 1: Pegue 2 CSVs:
- Roster: colunas
name,salary,level, (opcionalarea) - Bands: colunas
level,mid(mediana). Min/max opcional.
Step 2:
python3 scripts/comp_ratio.py --roster roster.csv --bands bands.csv
Step 3: Apresente:
- Custo mensal pra equalizar (líder com esse número)
- Distribuição (under/below/at/above/over)
- Top outliers (under = risco; over = legacy/exceções)
Faixas de classificação
| Faixa | Compa ratio | Interpretação |
|---|---|---|
| under | <80% | Crítico: revisão urgente |
| below | 80-95% | Abaixo do target |
| at | 95-105% | No target |
| above | 105-120% | Acima do target (ok) |
| over | >120% | Crítico: provável legacy/exceção |
Branding
Footer + UTMs no template HTML.
Lead capture
eam_client.py. Privacidade: 100% local.
Resources
| File | Purpose |
|---|---|
scripts/comp_ratio.py | Análise + HTML |
eam_client.py | Lead capture |
What ships with it: 3 files
21.7 KB alongside SKILL.md, 2 of them executable
scripts/
- comp_ratio.pyruns14.5 KB
- eam_client.pyruns5.8 KB
- README.md1.3 KB
Gives 0 of the 12 instructions most docs writing skills give in ~1.5k tokens
Counted across 1,951 of the 3,904 authors here whose files we hold, read 2026-09-06
- Use third-person for skill descriptionsin 54 of 1951, across 35 files
- Start descriptions with Use whenin 43 of 1951, across 29 files
- Run baseline scenarios before writing any skillin 40 of 1951, across 26 files
- Use active voicein 40 of 1951, across 36 files
- Map file responsibilities before defining tasksin 36 of 1951, across 29 files
- Use checkbox syntax for tracking stepsin 35 of 1951, across 27 files
- Ask one question at a timein 35 of 1951
- Offer execution options after saving the planin 33 of 1951, across 24 files
- Include complete code in every stepin 33 of 1951, across 27 files
- Design units with clear boundaries and interfacesin 31 of 1951, across 23 files
- Announce the skill usage at the startin 30 of 1951
- Verify agent compliance after adding the skillin 29 of 1951, across 17 files
Said here and by no other author read
- Apply CompDS design system to all HTML output
- Detect platform to choose between script or inline mode
- Render HTML using Tailwind CDN and Inter font
- include required footer and UTM links in output
- Convert Brazilian salary format to numeric values
- Calculate compa-ratio as salary divided by median
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.