Use this skill with your AI agent
Paste this skill into your AI agent's context, or save the file to your project. Works with any AI agent that reads markdown.
| 1 | --- |
| 2 | name: br-inss |
| 3 | description: Use this skill whenever asked about Brazilian INSS social contributions for self-employed individuals (contribuinte individual). Trigger on phrases like "INSS autônomo", "contribuinte individual", "GPS pagamento", "INSS 20%", "INSS simplificado 11%", "teto INSS", "previdência autônomo", or any question about Brazilian social security obligations for self-employed persons. Covers the 20% normal plan, 11% simplified plan, 5% MEI plan, contribution ceiling (teto), GPS payment mechanics, and edge cases. ALWAYS read this skill before touching any Brazilian INSS work. |
| 4 | version: 2.0 |
| 5 | --- |
| 6 | |
| 7 | # Brazil INSS Contributions (Contribuinte Individual) -- Self-Employed Skill v2.0 |
| 8 | |
| 9 | ## Section 1 -- Quick reference |
| 10 | |
| 11 | | Field | Value | |
| 12 | |---|---| |
| 13 | | Country | Brazil (Federative Republic of Brazil) | |
| 14 | | Authority | Receita Federal (collection); INSS (benefits) | |
| 15 | | Primary legislation | Lei 8.212/1991 (Custeio); Lei 8.213/1991 (Benefícios) | |
| 16 | | Supporting legislation | Decreto 3.048/1999; LC 123/2006 (MEI) | |
| 17 | | Plano Normal rate | 20% of income (between salário mínimo and teto) | |
| 18 | | Plano Simplificado rate | 11% of salário mínimo (fixed) | |
| 19 | | MEI rate | 5% of salário mínimo (fixed) | |
| 20 | | Salário mínimo (2025) | R$ 1,518.00 | |
| 21 | | Teto INSS (2025) | R$ 8,157.41 | |
| 22 | | Min contribution (20%) | R$ 303.60 | |
| 23 | | Max contribution (20%) | R$ 1,631.48 | |
| 24 | | Simplified (11%) | R$ 166.98 | |
| 25 | | MEI (5%) | R$ 75.90 | |
| 26 | | GPS due date | 15th of following month | |
| 27 | | Currency | BRL only | |
| 28 | | Contributor | Open Accountants | |
| 29 | | Validated by | Pending -- requires validation by Brazilian contador | |
| 30 | | Validation date | Pending | |
| 31 | |
| 32 | --- |
| 33 | |
| 34 | ## Section 2 -- Required inputs and refusal catalogue |
| 35 | |
| 36 | ### Required inputs |
| 37 | |
| 38 | Before computing, you MUST obtain: |
| 39 | |
| 40 | 1. **Worker classification** -- contribuinte individual, MEI, or facultativo? |
| 41 | 2. **Monthly gross income from self-employment** |
| 42 | 3. **Concurrent employment (CLT)?** -- dual status rules |
| 43 | 4. **Desired plan** -- Plano Normal (20%) or Simplificado (11%) |
| 44 | 5. **Does client want aposentadoria por tempo de contribuição?** -- only with 20% plan |
| 45 | 6. **Is client a MEI?** -- separate 5% regime |
| 46 | |
| 47 | **If classification is unknown, STOP.** |
| 48 | |
| 49 | ### Refusal catalogue |
| 50 | |
| 51 | **R-BR-INSS-1 -- Bilateral agreement.** Trigger: foreign worker with bilateral social security agreement. Message: "Bilateral agreements may exempt from INSS. Escalate for legal review." |
| 52 | |
| 53 | **R-BR-INSS-2 -- Complementação interest calculation.** Trigger: computing retroactive complementação (code 1295) with interest. Message: "Interest calculation at SELIC requires current rate data. Escalate to contador." |
| 54 | |
| 55 | ### Prohibitions |
| 56 | |
| 57 | - NEVER allow 11% plan client to believe they qualify for aposentadoria por tempo -- they do not |
| 58 | - NEVER compute below salário mínimo floor |
| 59 | - NEVER compute above teto ceiling (20% plan) |
| 60 | - NEVER ignore PJ withholdings when computing GPS difference |
| 61 | - NEVER tell zero-income client they must pay -- voluntary for zero-income months |
| 62 | - NEVER confuse contribuinte individual codes (1007/1163) with facultativo codes (1406/1473) |
| 63 | - NEVER present 5% MEI rate as available to non-MEI |
| 64 | - NEVER compute complementação interest without current SELIC |
| 65 | |
| 66 | --- |
| 67 | |
| 68 | ## Section 3 -- Contribution plans |
| 69 | |
| 70 | **Legislation:** Lei 8.212/1991 Art. 21 |
| 71 | |
| 72 | | Plan | Rate | Base | GPS code | Benefits | |
| 73 | |---|---|---|---|---| |
| 74 | | Plano Normal | 20% | Income (min-teto) | 1007 | Full: idade, tempo, invalidez, pensão, auxílio | |
| 75 | | Plano Simplificado | 11% | Salário mínimo (fixed) | 1163 | Limited: idade only | |
| 76 | | MEI | 5% | Salário mínimo (fixed) | DAS-MEI | Limited: idade only | |
| 77 | |
| 78 | --- |
| 79 | |
| 80 | ## Section 4 -- Calculation rules |
| 81 | |
| 82 | ### Plano Normal (20%) |
| 83 | |
| 84 | ``` |
| 85 | contribution = min(monthly_income, teto_INSS) x 20% |
| 86 | contribution = clamp(R$ 303.60, contribution, R$ 1,631.48) |
| 87 | ``` |
| 88 | |
| 89 | ### Plano Simplificado (11%) |
| 90 | |
| 91 | ``` |
| 92 | contribution = R$ 1,518.00 x 11% = R$ 166.98 (fixed) |
| 93 | ``` |
| 94 | |
| 95 | Always based on salário mínimo regardless of actual income. |
| 96 | |
| 97 | ### PJ withholding (services to companies) |
| 98 | |
| 99 | Company withholds 11% of payment (up to teto). If client on 20% plan, pay 9% difference via GPS code 1007. If total withholdings from multiple PJs reach teto, no additional payment needed. |
| 100 | |
| 101 | --- |
| 102 | |
| 103 | ## Section 5 -- GPS payment and registration |
| 104 | |
| 105 | ### GPS (Guia da Previdência Social) |
| 106 | |
| 107 | | Item | Detail | |
| 108 | |---|---| |
| 109 | | Generated via | Gov.br, Meu INSS, or manual Carnê | |
| 110 | | Due date | 15th of following month | |
| 111 | | Payment channels | Bank, internet banking, lotéricas | |
| 112 | |
| 113 | ### GPS codes |
| 114 | |
| 115 | | Code | Description | |
| 116 | |---|---| |
| 117 | | 1007 | Contribuinte individual -- Normal (20%) | |
| 118 | | 1163 | Contribuinte individual -- Simplificado (11%) | |
| 119 | | 1104 | Contribuinte individual -- PJ service (empresa retains 11%) | |
| 120 | | 1295 | Complementação (11% to 20% retroactive) | |
| 121 | |
| 122 | ### Registration |
| 123 | |
| 124 | CPF required. Must have NIT/PIS/PASEP. |
| 125 | |
| 126 | --- |
| 127 | |
| 128 | ## Section 6 -- Tax deductibility and penalties |
| 129 | |
| 130 | ### Tax deductibility |
| 131 | |
| 132 | | Question | Answer | |
| 133 | |---|---| |
| 134 | | Deductible? | YES -- from gross income for IRPF | |
| 135 | | Where? | Annual IRPF declaration | |
| 136 | | Carnê-leão | INSS deducted before computing monthly estimate | |
| 137 | |
| 138 | ### Penalties |
| 139 | |
| 140 | | Penalty | Detail | |
| 141 | |---|---| |
| 142 | | Late payment | SELIC daily + 0.33%/day (capped 20%) | |
| 143 | | Non-payment | Periods do not count for retirement | |
| 144 | | Retroactive collection | Up to 5 years | |
| 145 | |
| 146 | --- |
| 147 | |
| 148 | ## Section 7 -- Dual status and plan changes |
| 149 | |
| 150 | ### CLT employee + autônomo |
| 151 | |
| 152 | Total INSS capped at teto. If employment contributions reach teto, no additional autonomous INSS needed. |
| 153 | |
| 154 | ### Zero income month |
| 155 | |
| 156 | No mandatory contribution. Month does not count. May pay as facultativo optionally. |
| 157 | |
| 158 | ### Switching from simplified to normal |
| 159 | |
| 160 | Client on 11% can switch to 20% going forward. For prior periods, pay complementação (9% difference) via GPS code 1295 with SELIC interest. |
| 161 | |
| 162 | ### MEI exceeding revenue limit |
| 163 | |
| 164 | Must be desenquadrado. Transitions to contribuinte individual. Prior MEI periods (5%) valid for idade only. Flag for reviewer. |
| 165 | |
| 166 | --- |
| 167 | |
| 168 | ## Section 8 -- Edge case registry |
| 169 | |
| 170 | ### EC1 -- Simplified plan wants tempo |
| 171 | **Situation:** 11% plan client needs aposentadoria por tempo. |
| 172 | **Resolution:** Switch to 20% or pay complementação (code 1295) for prior periods. |
| 173 | |
| 174 | ### EC2 -- Dual status, employment at teto |
| 175 | **Situation:** CLT salary R$ 8,157.41, additional autônomo income. |
| 176 | **Resolution:** Employment already at teto. Zero additional GPS. |
| 177 | |
| 178 | ### EC3 -- PJ withholding + 20% plan |
| 179 | **Situation:** R$ 6,000 from PJ, 11% withheld = R$ 660. Client on 20%. |
| 180 | **Resolution:** Owed R$ 1,200. Withheld R$ 660. GPS R$ 540. |
| 181 | |
| 182 | ### EC4 -- Income below mínimo |
| 183 | **Situation:** Income R$ 800. |
| 184 | **Resolution:** Minimum base R$ 1,518. Contribution R$ 303.60 (20%) or R$ 166.98 (11%). |
| 185 | |
| 186 | ### EC5 -- Multiple PJs, over-withholding |
| 187 | **Situation:** R$ 5,000 from PJ-A + R$ 5,000 from PJ-B. Both withhold 11%. |
| 188 | **Resolution:** Total R$ 10,000 but teto R$ 8,157.41. Max withholding = R$ 897.32. May have overpaid. Request refund. |
| 189 | |
| 190 | ### EC6 -- Zero income month |
| 191 | **Situation:** No income March 2025. |
| 192 | **Resolution:** No mandatory contribution. May pay facultativo. |
| 193 | |
| 194 | --- |
| 195 | |
| 196 | ## Section 9 -- Reviewer escalation protocol |
| 197 | |
| 198 | When a situation requires reviewer judgement: |
| 199 | |
| 200 | ``` |
| 201 | REVIEWER FLAG |
| 202 | Tier: T2 |
| 203 | Client: [name] |
| 204 | Situation: [description] |
| 205 | Issue: [what is ambiguous] |
| 206 | Options: [possible treatments] |
| 207 | Recommended: [most likely correct treatment and why] |
| 208 | Action Required: Qualified contador must confirm before advising client. |
| 209 | ``` |
| 210 | |
| 211 | When a situation is outside skill scope: |
| 212 | |
| 213 | ``` |
| 214 | ESCALATION REQUIRED |
| 215 | Tier: T3 |
| 216 | Client: [name] |
| 217 | Situation: [description] |
| 218 | Issue: [outside skill scope] |
| 219 | Action Required: Do not advise. Refer to qualified contador. Document gap. |
| 220 | ``` |
| 221 | |
| 222 | --- |
| 223 | |
| 224 | ## Section 10 -- Test suite |
| 225 | |
| 226 | ### Test 1 -- Standard 20%, mid-range |
| 227 | **Input:** Income R$ 4,000. Normal (20%). No PJ withholding. |
| 228 | **Expected output:** R$ 800.00. GPS 1007. |
| 229 | |
| 230 | ### Test 2 -- Exceeds teto |
| 231 | **Input:** Income R$ 12,000. Normal (20%). |
| 232 | **Expected output:** Base capped R$ 8,157.41. Contribution R$ 1,631.48. |
| 233 | |
| 234 | ### Test 3 -- Simplified |
| 235 | **Input:** Income R$ 5,000. Simplificado (11%). |
| 236 | **Expected output:** R$ 166.98 (fixed on mínimo). GPS 1163. |
| 237 | |
| 238 | ### Test 4 -- PJ withholding + 20% difference |
| 239 | **Input:** R$ 6,000 from PJ. Withheld R$ 660. 20% plan. |
| 240 | **Expected output:** Owed R$ 1,200. GPS R$ 540. |
| 241 | |
| 242 | ### Test 5 -- Dual status, at teto |
| 243 | **Input:** CLT R$ 8,157.41 + autônomo R$ 3,000. |
| 244 | **Expected output:** Zero additional GPS. |
| 245 | |
| 246 | ### Test 6 -- Zero income |
| 247 | **Input:** No income March 2025. |
| 248 | **Expected output:** No mandatory contribution. |
| 249 | |
| 250 | ### Test 7 -- Minimum income |
| 251 | **Input:** Income R$ 800. Normal (20%). |
| 252 | **Expected output:** Base R$ 1,518. Contribution R$ 303.60. |
| 253 | |
| 254 | --- |
| 255 | |
| 256 | ## Disclaimer |
| 257 | |
| 258 | This skill and its outputs are provided for informational and computational purposes only and do not constitute tax, legal, or financial advice. Open Accountants and its contributors accept no liability for any errors, omissions, or outcomes arising from the use of this skill. All outputs must be reviewed and signed off by a qualified professional (such as a CPA, EA, tax attorney, or equivalent licensed practitioner in your jurisdiction) before filing or acting upon. |
| 259 | |
| 260 | The most up-to-date, verified version of this skill is maintained at [openaccountants.com](https://openaccountants.com). Log in to access the latest version, request a professional review from a licensed accountant, and track updates as tax law changes. |
| 261 |
Run this skill, then get an accountant to check it
After running the full skill pack in your AI agent, sign up and upload your worksheet. We'll connect you with a trusted accountant in our network who can review your numbers before you file.
Quality
Q3: AI-drafted
AI-generated with structure and citations. Not independently verified.
Needs deep research against tax authority websites to reach Q2.
Accountant Review
About
Use this skill whenever asked about Brazilian INSS social contributions for self-employed individuals (contribuinte individual). Trigger on phrases like "INSS autônomo", "contribuinte individual", "GPS pagamento", "INSS 20%", "INSS simplificado 11%", "teto INSS", "previdência autônomo", or any question about Brazilian social security obligations for self-employed persons. Covers the 20% normal plan, 11% simplified plan, 5% MEI plan, contribution ceiling (teto), GPS payment mechanics, and edge cases. ALWAYS read this skill before touching any Brazilian INSS work.
Use this skill
This skill is open source and free to use in any AI agent. Copy it, download it, or clone the repo. If you find an error, flag it — a licensed accountant will review.