Claude
Skills
Sign in
Back

tax-check

Included with Lifetime
$97 forever

This skill should be used when the user asks to "check taxes", "tax optimization", "reduce taxes Germany", "Steuererklärung tips", "tax deductions", "Werbungskosten check", "Sparerpauschbetrag optimization", "what can I deduct", "prepare for Steuerberater", or "file tax return". Identifies tax optimization opportunities for a single expat in Berlin using German tax law.

General

What this skill does


# Tax Check — German Tax Optimization for Berlin Expat

Identify tax optimization opportunities for the user's situation as a single expat in Berlin, Germany. Produce a structured, quantitative report with actionable recommendations ranked by estimated annual savings. All output in English. All currency in EUR. All tax references grounded in current German Einkommensteuergesetz (EStG) and related statutes.

Load `${CLAUDE_PLUGIN_ROOT}/skills/financial-analysis/references/german-financial-system.md` for detailed German tax parameters, deduction categories, and regulatory context.

## Step 1: Read Financial Data

Read all files in `finance/data/` to establish the user's current financial position:

- `finance/data/employment.md` — gross salary, Steuerklasse, employer benefits, bonus structure, any Geldwerter Vorteil (benefits in kind)
- `finance/data/pension.md` — pension provider, plan type (Riester, Ruerup, private Rentenversicherung), contribution amounts
- `finance/data/bank-accounts.md` — savings accounts, brokerage accounts, interest earned, current Freistellungsauftrag allocations
- `finance/data/monthly-budget.md` — income vs. expenses, identifying deductible categories
- `finance/data/property-goals.md` — real estate purchase timeline and target parameters

If a file is missing or incomplete, flag the gap explicitly in the report and state what assumptions were made in its place. Do not silently substitute default values.

Also read any raw documents in `finance/docs/` that may contain relevant details (Arbeitsvertrag, Kontoauszuege, Standmitteilungen).

## Step 2: Web Search for Current Tax Parameters

Before performing any calculations, execute web searches to retrieve current-year figures. Do not rely on training data for any of the following:

1. **German income tax brackets (Einkommensteuertarif)** — search for the current year's tariff schedule, including the Grundfreibetrag (basic tax-free allowance), entry rate (14%), top rate (42%), and Reichensteuer threshold (45%).
2. **Sparerpauschbetrag** — confirm the current saver's lump-sum allowance (expected EUR 1,000 for singles). Verify whether any legislative changes have taken effect.
3. **Werbungskostenpauschale** — confirm the current employee lump-sum deduction (expected EUR 1,230). Check for any increases.
4. **Homeoffice-Pauschale** — confirm the per-day amount and maximum annual cap.
5. **Vorsorgeaufwendungen limits** — maximum deductible pension contributions for Basisversorgung (Ruerup/gesetzliche Rente).
6. **Sonderausgaben limits** — deduction ceilings for insurance premiums and other special expenses.
7. **Recent tax law changes** — search for any new deductions, changed thresholds, or expiring provisions relevant to the current tax year.

Record the source URL and retrieval date for each figure. Include these in the report for traceability.

## Step 3: Analyze Income and Identify Deductions

Calculate the current estimated tax burden step by step. Show all math explicitly:

```
Gross annual salary:                         EUR X
- Sozialversicherungsbeitraege:              EUR Y
  (Rentenversicherung, Krankenversicherung,
   Pflegeversicherung, Arbeitslosenversicherung)
= Zu versteuerndes Einkommen (before deductions): EUR Z
- Applicable deductions (see below):         EUR D
= Zu versteuerndes Einkommen (final):       EUR F
- Einkommensteuer (per EStG tariff):         EUR T
- Solidaritaetszuschlag:                     EUR S
= Estimated annual tax burden:               EUR B
```

### 3a: Werbungskosten (Income-Related Expenses)

Determine whether actual work-related expenses exceed the Werbungskostenpauschale (EUR 1,230). For km rates, day caps, EUR 800 equipment threshold, and all other calculation parameters, load `${CLAUDE_PLUGIN_ROOT}/skills/financial-analysis/references/german-financial-system.md`.

Key categories to evaluate: Entfernungspauschale (commuting), Homeoffice-Pauschale (max EUR 1,260/year, cannot combine with Entfernungspauschale on the same day), professional development, work equipment, association dues, double household (Doppelte Haushaltsführung), and relocation costs.

If actual costs exceed EUR 1,230, flag as an optimization opportunity and quantify the additional deduction. Use `> [!info] Werbungskosten` callouts to explain the concept inline in the generated report.

### 3b: Sonderausgaben (Special Expenses)

Evaluate deductible special expenses. For deduction ceilings, percentage rules, and Günstigerprüfung criteria, load `${CLAUDE_PLUGIN_ROOT}/skills/financial-analysis/references/german-financial-system.md`.

Key categories: Basisversorgung contributions (GRV + Rürup, 100% deductible since 2023), Kranken-/Pflegeversicherung Basisbeiträge (fully deductible), Riester Sonderausgabenabzug (up to EUR 2,100 including Zulage), and charitable donations (Spenden up to 20% of income).

Use `> [!info] Sonderausgaben` callouts to explain the concept inline in the generated report.

### 3c: Aussergewoehnliche Belastungen (Extraordinary Expenses)

Note this category for completeness. Flag if any of the following apply based on the user's data: significant medical expenses not covered by insurance, disability-related costs, or care costs for dependents. If none apply, state that no extraordinary expenses were identified.

## Step 4: Review Investment Income Optimization

Analyze investment and savings income for tax efficiency:

1. **Sparerpauschbetrag utilization:** Sum all investment income (interest, dividends, realized capital gains) across all accounts. Determine whether the EUR 1,000 Sparerpauschbetrag is fully utilized, underutilized, or exceeded.
2. **Freistellungsauftrag allocation:** Check whether Freistellungsauftraege are filed with each bank and broker. Verify that the total across all institutions does not exceed EUR 1,000. Flag any account earning investment income without a Freistellungsauftrag — tax is being withheld unnecessarily on income that could be tax-free.
3. **Loss harvesting (Verlustverrechnung):** Identify positions with unrealized losses. Explain that selling and immediately rebuying (or buying a similar ETF) crystallizes the loss for tax offset. Note the restriction: Aktienverluste can only offset Aktiengewinne, not other investment income.
4. **Guenstigerpruefung:** If the user's marginal income tax rate is below 25%, flag that a tax return could reclaim overpaid Kapitalertragsteuer via the Guenstigerpruefung.

> [!info] Freistellungsauftrag (Tax Exemption Order)
> A standing instruction to a bank or broker to not withhold tax on investment income up to a specified amount. The total across all institutions must not exceed the Sparerpauschbetrag (EUR 1,000 for singles). Without it, tax is withheld at source and must be reclaimed via a tax return.

> [!info] Verlustverrechnung (Loss Offsetting)
> Realized investment losses can offset gains, reducing the tax bill. Losses from share sales (Aktien) can only offset gains from share sales, not dividends or interest. Losses from other investments (ETFs classified as Investmentfonds, bonds, interest) can offset all types of investment income.

## Step 5: Pension-Specific Tax Optimization

Evaluate pension arrangements for tax efficiency:

1. **Ruerup (Basisrente):**
   - Calculate the maximum tax-deductible contribution for the current year.
   - Determine how much the user is currently contributing.
   - Quantify the tax saving from increasing contributions to the maximum deductible amount.
   - Note the trade-off: contributions are locked until retirement (earliest age 62), and payouts are taxed as income.

2. **Riester-Rente:**
   - Verify eligibility (requires membership in gesetzliche Rentenversicherung or being a Beamter).
   - Check whether the minimum contribution (4% of Vorjahresbrutto, minus Zulagen) is being met to receive the full Grundzulage of EUR 175.
   - Calculate the Sonderausgabenabzug benefit: determine whether the tax deduction (up to EUR 2,100) exceeds the Zulage — if so

Related in General