
Israeli Arnona Optimizer
- 60 installs
- 29 repo stars
- Updated August 3, 2026
- skills-il/tax-and-finance
Reduce Israeli municipal tax (arnona) legally by mapping hasaga deadlines, oleh discounts, and rate categories from verified statute claims.
About
Israeli Arnona Optimizer is a research-backed agent skill for solo and indie builders who rent or own space in Israel and need municipal tax guidance that respects real deadlines and discounts. It packages verified legal claims—hasaga filing within ninety days of the payment demand, manager response timelines, appeals committee steps, and oleh residence discounts—so your agent cites sources instead of inventing procedures. Use it when arnona demands arrive, when you qualify as a new immigrant, or when you suspect wrong square-meter or use classification. The skill is niche by geography but high stakes: missed windows forfeit formal objection rights. It complements general finance skills by focusing on Local Authorities (Objection to Arnona Assessment) Law mechanics and teudat oleh timing, not global accounting.
- Structured claims on 90-day hasaga, 60-day manager reply, and 30-day erur windows with Nevo law citations
- Oleh chadash discount rules: up to 90% on 100 sqm for 12 months within first 24 months
- Schema-versioned claim pack (claims[], source_url, raw_snippet) for auditable agent answers
- Bilingual SKILL.md / SKILL_HE.md alignment for Israeli builders
- Designed for objection and appeal sequencing, not generic tax chat
Israeli Arnona Optimizer by the numbers
- 60 all-time installs (skills.sh)
- Ranked #570 of 1,106 Finance & Trading skills by installs in the Skillselion catalog
- Security screen: LOW risk (skills.sh audit)
- Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/skills-il/tax-and-finance --skill israeli-arnona-optimizerAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 60 |
|---|---|
| repo stars | ★ 29 |
| Security audit | 3 / 3 scanners passed |
| Last updated | August 3, 2026 |
| Repository | skills-il/tax-and-finance ↗ |
What it does
Reduce Israeli municipal tax (arnona) legally by mapping hasaga deadlines, oleh discounts, and rate categories from verified statute claims.
Files
Israeli Arnona Optimizer
Instructions
Step 1: Gather Property Details
Before performing any arnona calculation, collect the following information from the user:
1. Municipality (iriya): Which city or local council the property is located in (e.g., Tel Aviv-Yafo, Jerusalem, Haifa, Beer Sheva, Netanya, Rishon LeZion). 2. Property area: Total area in square meters (sqm). Distinguish between main area and auxiliary areas (storage rooms, balconies, parking) as these are billed at different rates. 3. Zone classification: The arnona zone within the municipality. Each city divides into zones (azor) with different rate tiers. Ask the user for their zone or help them determine it from their address. 4. Usage type: Residential (megurim), commercial (mishari), office (misrad), industrial (taasia), or other special uses. Rates differ significantly by usage. 5. Billing period: Arnona is billed bimonthly (every two months) in most municipalities. The annual rate is divided into 6 payment periods.
Step 2: Calculate Base Arnona
Use the arnona calculator script to compute the base annual arnona:
python scripts/arnona-calculator.py --municipality "tel-aviv" --area 80 --zone 2 --usage residentialThe calculator applies the correct rate per sqm based on the municipality's published rate tables. Key rate structures:
- Tel Aviv-Yafo: Rates range from approximately 75 to 130 NIS/sqm/year for residential depending on zone (zones 1-4). Commercial rates are 2-4x higher.
- Jerusalem: Rates range from approximately 55 to 95 NIS/sqm/year for residential. Divided into 5 zones using Hebrew letters alef through heh (א through ה).
- Haifa: Rates range from approximately 50 to 90 NIS/sqm/year for residential. Lower overall compared to Tel Aviv.
- Beer Sheva: Rates range from approximately 35 to 60 NIS/sqm/year for residential. Among the lowest for major cities.
Consult references/arnona-rates-guide.md for detailed rate tables and zone classification rules.
Step 3: Check Discount Eligibility
After calculating the base arnona, check if the user qualifies for any discounts. Israeli law (the Arnona Regulations and individual municipal bylaws) provides discounts for specific populations:
| Category | Discount | Key Requirements |
|---|---|---|
| Oleh Chadash (new immigrant) | Up to 90% on up to 100 sqm | 12 discounted months chosen within the first 24 months from the teudat-oleh / registration date; primary residence |
| Active-duty soldier (chayal sadir) | Up to 100% | IDF service confirmation; lone/qualifying soldier |
| Senior (vatik), pension recipient | Up to 25% (discretionary) | Receives old-age / survivors / work-injury pension; no income test |
| Senior (vatik), income-tested | 30% (mandatory) | Household income up to the average wage |
| Senior (vatik) with income supplement | Up to 100% | Also receives hashlamat hachnasa within the income limit |
| Disabled, medical disability 90%+ | Up to 40% | Bituach Leumi medical-disability certificate (90%+) |
| Disabled, earning incapacity 75%+ | Up to 80% | 75%+ loss of earning capacity (ai-kosher) with a full monthly benefit |
| Low income (individual) | 20-80% | Income below municipality threshold (varies by city) |
| Student | Up to ~50% (municipality-dependent) | Discretionary per municipal bylaw; no uniform national rate |
| Single parent | Up to 20% | Recognized single parent status |
| Large family (4+ children) | Income-tested, up to ~30% | Four or more dependent children; income bands |
| Bereaved family | Up to 66% | Ministry of Defense bereaved family recognition |
| Holocaust survivor | Up to 66% | Recognized Holocaust survivor status |
Run the calculator with discount flags:
python scripts/arnona-calculator.py --municipality "tel-aviv" --area 80 --zone 2 --usage residential --discount oleh --discount-months 8Consult references/arnona-discounts-guide.md for the full list of discount categories, required documentation, and municipality-specific variations.
Important rules about discounts:
- Discounts apply only to the primary residence (dira ikarit), up to 100 sqm in most municipalities.
- Area above the discount cap is charged at the full rate.
- Only one discount can be applied at a time (the highest applicable discount).
- Discounts must be renewed annually in most municipalities.
- The application deadline varies by municipality (typically January-March).
Step 4: Draft Appeal Letters
If the user believes their arnona assessment is incorrect, help them draft an appeal letter (hasaga) to the municipality's arnona committee (vaada le-hashagot). Common grounds for appeal:
1. Incorrect area measurement: The municipality's recorded area differs from the actual property size. Request a surveyor re-measurement. 2. Wrong zone classification: The property should be classified in a lower-rate zone based on its location. 3. Incorrect usage classification: The property is classified as commercial but is actually used for residential purposes (or vice versa). 4. Structural issues: Parts of the property are uninhabitable (e.g., under renovation, flood damage, structural defects). 5. Empty/vacant property: The property has been vacant for an extended period (some municipalities offer partial exemptions for vacant properties, typically up to 6 months).
Appeal process:
- File the appeal (hasaga) within 90 days of receiving the arnona bill.
- The arnona manager (menahel ha-arnona) must respond within 60 days.
- If dissatisfied with the manager's decision, appeal to the arnona appeals committee (vaada le-erurim) within 30 days.
- Further appeals go to the Administrative Court (Beit Mishpat le-Inyanim Minhaliyim).
Include these elements in the appeal letter:
- Full property address and account number (mispar heshbon)
- The specific ground for appeal (with legal reference to the Arnona Regulations)
- Supporting evidence (surveyor report, photos, lease agreement)
- The requested remedy (reclassification, area correction, discount application)
Step 5: Analyze Payment Options
Help the user understand their payment options:
1. Bimonthly payments: Standard 6 payments per year. No additional fees. 2. Annual lump sum: Some municipalities offer a 1-2% discount for paying the full year upfront (usually by January 31). 3. Direct debit (horaat keva): Automatic bank debit. Some municipalities offer a small discount. 4. Payment plan for arrears: If the user has arnona debt, municipalities typically offer payment plans. Interest on late payments is set by the Local Authorities Ordinance.
Step 6: Provide Municipality Contact Information
Direct the user to the relevant arnona department. Note that municipality contact details should be verified on official websites as phone numbers and contact information may change:
- Tel Aviv: tel-aviv.gov.il, arnona@mail.tel-aviv.gov.il
- Jerusalem: jerusalem.muni.il, arnona@jerusalem.muni.il
- Haifa: haifa.muni.il, arnona@haifa.muni.il
- Beer Sheva: beer-sheva.muni.il
Remind the user that all communications with the arnona department should be documented in writing and sent via registered mail (doar rashum) or through the municipality's online portal.
Examples
Example 1: Calculate Arnona for a Tel Aviv Apartment
User says: "I have an 85 sqm apartment in Tel Aviv, zone 2. How much arnona should I pay?"
Actions: 1. Run the arnona calculator: python scripts/arnona-calculator.py --municipality "tel-aviv" --area 85 --zone 2 --usage residential 2. Review the output showing the per-sqm rate for Tel Aviv zone 2 residential (approximately 95 NIS/sqm/year) 3. Calculate the annual total: 85 sqm x 95 NIS = 8,075 NIS/year 4. Calculate the bimonthly payment: 8,075 / 6 = approximately 1,346 NIS per billing period
Result: The estimated annual arnona is approximately 8,075 NIS (about 1,346 NIS bimonthly). The agent explains that rates are updated annually by the municipality and may vary slightly from these estimates. The user is advised to verify against their actual arnona bill.
Example 2: Check Oleh Chadash Discount Eligibility
User says: "I made aliyah 6 months ago and I'm renting a 70 sqm apartment in Jerusalem, zone bet. What discounts can I get?"
Actions: 1. Identify the user as an oleh chadash still within the 24-month eligibility window (6 months after aliyah) 2. Consult references/arnona-discounts-guide.md for oleh discount rules 3. Run the calculator with the oleh discount: python scripts/arnona-calculator.py --municipality "jerusalem" --area 70 --zone B --usage residential --discount oleh --discount-months 12 4. Calculate base arnona: 70 sqm x approximately 72 NIS/sqm = 5,040 NIS/year 5. Apply 90% on up to 100 sqm: a full 12 discounted months brings the annual charge down to about 504 NIS (saving ~4,536 NIS)
Result: As an oleh chadash, the user is eligible for a 90% arnona discount on up to 100 sqm for 12 months, which they may use any time within the first 24 months after aliyah (the 12 months need not be the first consecutive 12). For a 70 sqm apartment in Jerusalem zone bet, the base annual arnona is approximately 5,040 NIS; with the 90% discount applied across 12 months the user pays only about 504 NIS (roughly 84 NIS bimonthly). To apply: bring the oleh certificate (teudat oleh) and lease agreement to the Jerusalem municipality arnona department or apply online at jerusalem.muni.il.
Example 3: Draft an Appeal for Incorrect Area Measurement
User says: "My arnona bill says my apartment is 95 sqm but I measured it and it's only 82 sqm. I'm in Haifa. How do I appeal?"
Actions: 1. Identify the ground for appeal: incorrect area measurement (13 sqm discrepancy) 2. Calculate the financial impact: 13 sqm x approximately 65 NIS/sqm = approximately 845 NIS/year overcharge 3. Draft an appeal letter referencing Section 3(a) of the Arnona Regulations (Takanot HaSdrei Nisui v'Givia shel Arnona Klalit) 4. Include instructions for obtaining a professional surveyor measurement 5. Provide the Haifa arnona committee address and filing deadline
Result: The agent drafts a formal appeal letter in Hebrew addressed to the Haifa arnona manager (menahel arnona, iriyat Haifa), stating the discrepancy between the recorded area (95 sqm) and actual area (82 sqm), referencing the relevant regulation, requesting a re-measurement by a municipal surveyor, and asking for retroactive correction and refund. The user is advised to attach a private surveyor's measurement report and send via registered mail within 90 days of the bill date.
Bundled Resources
Scripts
scripts/arnona-calculator.py-- Calculate arnona payments by municipality, area, zone, and usage type, with optional discount application. Run:python scripts/arnona-calculator.py --help
References
references/arnona-rates-guide.md-- Comprehensive guide to arnona rate structures, zone classifications, usage types, and billing cycles across Israeli municipalities. Consult when determining the correct rate for a specific property.references/arnona-discounts-guide.md-- Complete reference for all arnona discount categories, eligibility criteria, required documentation, and municipality-specific variations. Consult when checking if a user qualifies for arnona discounts.
Reference Links
| Source | URL | What to Check |
|---|---|---|
| Kolzchut: Arnona | https://www.kolzchut.org.il/he/ארנונה | Plain-language guide to arnona obligations, discounts, and appeal rights |
| gov.il: Property Tax (Arnona) | https://www.gov.il/he/departments/topics/property_tax_arnona | Official ministry topic page covering legislation and discount eligibility |
| Bituach Leumi: Disability Benefits | https://www.btl.gov.il/benefits/Disability/Pages/default.aspx | Source documents for the disability percentages used in arnona discount eligibility |
| Tel Aviv Municipality | https://www.tel-aviv.gov.il/ | Tel Aviv tzav arnona, current rates, online payment, appeals |
| Jerusalem Municipality | https://www.jerusalem.muni.il/ | Jerusalem alef-heh zone rates, payment, discount applications |
Gotchas
- Arnona rates vary dramatically between municipalities. Agents may use Tel Aviv rates for Haifa properties or vice versa. Always verify rates against the specific municipality (iriya or mo'atza).
- Arnona discounts (hanacha) have strict eligibility windows and require annual renewal. Agents may suggest discounts the user no longer qualifies for or that have expired.
- Property classification (residential vs. commercial) significantly affects arnona rates. Agents may misclassify home offices, which in Israel are usually still taxed at residential rates unless formally rezoned.
- Arnona appeal deadlines are typically 90 days from the annual bill date. Agents may draft appeals after the deadline has passed, making them void.
Troubleshooting
Error: "Municipality not found in rate tables"
Cause: The arnona calculator does not have rate data for the specified municipality. Smaller local councils (moatzot mekomiyot) and regional councils (moatzot azeriyot) have their own rate tables that may not be included. Solution: Check the municipality name spelling. Use the --list-municipalities flag to see all supported municipalities. For unsupported municipalities, consult the municipality's website directly for their published arnona rate ordinance (tzav arnona). You can also try searching for "[municipality name] tzav arnona [year]" to find the official rate publication.
Error: "Discount category not recognized"
Cause: The discount type specified does not match one of the supported discount categories in the calculator. Solution: Run python scripts/arnona-calculator.py --list-discounts to see all supported discount categories. Common mistakes include using "immigrant" instead of "oleh". The supported categories are: oleh, soldier, senior-pension, senior-income, senior-supplement, disabled-medical, disabled-incapacity, low-income, student, single-parent, large-family, bereaved, holocaust-survivor.
Error: "Zone not valid for this municipality"
Cause: Each municipality uses its own zone classification system. Tel Aviv uses numbered zones (1-4), Jerusalem uses Hebrew-letter zones alef through heh (א-ה), and other cities have their own systems. Solution: Check the zone classification for your specific municipality. If unsure of your zone, look at a previous arnona bill (it shows the zone), or contact the municipality's arnona department. The references/arnona-rates-guide.md file lists the zone systems for each supported municipality.
Error: "Cannot determine appeal deadline"
Cause: The appeal filing deadline depends on when the arnona bill was received, and the system cannot verify the receipt date. Solution: The general rule is 90 days from the date of the arnona bill for filing an appeal (hasaga) to the arnona manager. After receiving the manager's decision, the user has 30 days to appeal to the appeals committee (vaada le-erurim). Always recommend filing as early as possible and keeping proof of the filing date (registered mail receipt or online submission confirmation).
{
"schemaVersion": "1.0",
"skill": "israeli-arnona-optimizer",
"generated_at": "2026-06-07T00:00:00Z",
"claims": [
{
"claim_id": "hasaga-deadlines",
"claim": "Arnona objection (hasaga) must be filed with the arnona manager within 90 days of receiving the payment demand (Local Authorities (Objection to Arnona Assessment) Law 1976, section 3). The manager must respond within 60 days (section 4). An appeal (erur) to the appeals committee is filed within 30 days of the manager's decision (section 6); further appeal goes to the Administrative Court.",
"source_url": "https://www.nevo.co.il/law_html/law01/p213_058.htm",
"raw_snippet": "חוק הרשויות המקומיות (ערר על קביעת ארנונה כללית), התשל\"ו-1976: השגה תוך תשעים ימים מיום קבלת הודעת התשלום; המנהל ישיב תוך שישים יום; ערר לוועדת הערר תוך 30 יום מקבלת ההחלטה.",
"fetched_at": "2026-06-07T00:00:00Z",
"appears_in": ["SKILL.md", "SKILL_HE.md"]
},
{
"claim_id": "oleh-discount",
"claim": "Oleh chadash arnona discount: up to 90% on up to 100 sqm of the primary residence, for 12 months that may be chosen within the first 24 months from the date registered as an oleh (teudat oleh / population-registry date). The 12 discounted months need not be the first consecutive 12.",
"source_url": "https://www.nevo.co.il/law_html/law01/297_032.htm",
"raw_snippet": "תקנות הסדרים במשק המדינה (הנחה מארנונה): עולה זכאי להנחה של עד 90% על עד 100 מ\"ר ל-12 חודשים מתוך 24 החודשים הראשונים ממועד הרישום כעולה.",
"fetched_at": "2026-06-07T00:00:00Z",
"appears_in": ["SKILL.md", "SKILL_HE.md", "references/arnona-discounts-guide.md", "scripts/arnona-calculator.py"]
},
{
"claim_id": "senior-discount",
"claim": "Senior (vatik) arnona discount is by pension/income status, not age band: 25% (discretionary) for a recipient of an old-age/survivors/work-injury pension with no income test; 30% (mandatory) income-tested where household income is up to the national average wage (about NIS 13,623/month as of January 2026, updated annually); up to 100% for a senior who also receives an income supplement (hashlamat hachnasa) within the income limit. Applies to the first 100 sqm.",
"source_url": "https://www.kolzchut.org.il/he/%D7%94%D7%A0%D7%97%D7%94_%D7%91%D7%90%D7%A8%D7%A0%D7%95%D7%A0%D7%94_%D7%9C%D7%90%D7%96%D7%A8%D7%97%D7%99%D7%9D_%D7%95%D7%AA%D7%99%D7%A7%D7%99%D7%9D",
"raw_snippet": "הנחה לאזרח ותיק: 25% למקבל קצבת זקנה/שאירים/נפגעי עבודה (ללא מבחן הכנסה); 30% במבחן הכנסה עד השכר הממוצע; עד 100% למי שמקבל גם השלמת הכנסה.",
"fetched_at": "2026-06-07T00:00:00Z",
"appears_in": ["SKILL.md", "SKILL_HE.md", "references/arnona-discounts-guide.md", "scripts/arnona-calculator.py"]
},
{
"claim_id": "disabled-discount",
"claim": "Disabled-person arnona discount: up to 40% for a person with a Bituach Leumi medical disability of 90% or more; up to 80% for a person with 75%+ loss of earning capacity (degree of ai-kosher) who receives a full monthly benefit. There is no 50-74% disability band in the national regulation.",
"source_url": "https://www.jerusalem.muni.il/he/residents/arnona/arnonadiscounts/apartmentsdiscounts/disability/",
"raw_snippet": "הנחה לנכה: 40% לבעל נכות רפואית 90% ומעלה; עד 80% לבעל דרגת אי-כושר השתכרות 75% ומעלה המקבל קצבה חודשית מלאה.",
"fetched_at": "2026-06-07T00:00:00Z",
"appears_in": ["SKILL.md", "SKILL_HE.md", "references/arnona-discounts-guide.md", "scripts/arnona-calculator.py"]
},
{
"claim_id": "other-discounts",
"claim": "Other arnona discounts: active-duty/lone soldier up to 100%; low income 20-80% (municipality threshold); student up to ~50% (discretionary per municipal bylaw, no uniform national rate); single parent up to 20%; large family (4+ children) income-tested up to ~30%; bereaved family up to 66%; Holocaust survivor up to 66%. Discounts apply to the primary residence up to 100 sqm; only one discount applies at a time (the highest), renewed annually.",
"source_url": "https://www.kolzchut.org.il/he/%D7%94%D7%A0%D7%97%D7%95%D7%AA_%D7%91%D7%90%D7%A8%D7%A0%D7%95%D7%A0%D7%94",
"raw_snippet": "הנחות ארנונה: חייל בודד עד 100%; הכנסה נמוכה 20-80%; הורה יחיד עד 20%; משפחה ברוכת ילדים עד כ-30% במבחן הכנסה; משפחה שכולה וניצולי שואה עד 66%; הנחה אחת בכל פעם, עד 100 מ\"ר, חידוש שנתי.",
"fetched_at": "2026-06-07T00:00:00Z",
"appears_in": ["SKILL.md", "SKILL_HE.md", "references/arnona-discounts-guide.md", "scripts/arnona-calculator.py"]
},
{
"claim_id": "update-coefficient-2026",
"claim": "Arnona rates update annually by a government-set coefficient (the automatic formula: half the CPI change + half the public-sector wage-index change). For 2026 the national arnona update coefficient is 1.626%. Approximate 2026 residential rate ranges: Tel Aviv ~75-130, Jerusalem ~55-95, Haifa ~50-90, Beer Sheva ~35-60 NIS/sqm/year (verify against the current tzav arnona).",
"source_url": "https://www.gov.il/he/departments/topics/property_tax_arnona",
"raw_snippet": "שיעור עדכון הארנונה לשנת 2026 הוא 1.626%, לפי הנוסחה האוטומטית (מחצית שינוי המדד ומחצית שינוי מדד השכר הציבורי).",
"fetched_at": "2026-06-07T00:00:00Z",
"appears_in": ["SKILL.md", "SKILL_HE.md", "references/arnona-rates-guide.md"]
},
{
"claim_id": "reference-urls-and-examples",
"claim": "Reference URLs and illustrative example figures. Example calc figures (Tel Aviv zone 2 ~95 NIS/sqm, 85 sqm -> ~8,075 NIS/yr -> ~1,346 bimonthly; Jerusalem zone bet ~72 NIS/sqm, 70 sqm -> ~5,040 NIS/yr; Haifa ~65 NIS/sqm, 13 sqm discrepancy -> ~845 NIS) are illustrative estimates, not official rates.",
"source_url": "https://www.kolzchut.org.il/he/%D7%90%D7%A8%D7%A0%D7%95%D7%A0%D7%94",
"raw_snippet": "Reference URLs: https://www.kolzchut.org.il/he/ארנונה https://www.gov.il/he/departments/topics/property_tax_arnona https://www.btl.gov.il/benefits/Disability/Pages/default.aspx https://www.tel-aviv.gov.il/ https://www.jerusalem.muni.il/ . Legal reference: Section 3 / סעיף 3 of the 1976 objection law. Municipal arnona phone numbers: *6195 (Tel Aviv), *6226 (Jerusalem), *2404 (Haifa), *6230 (Beer Sheva). Annual-lump-sum and direct-debit discounts of 1-2% (2%, 3% appear as discount/range figures). Average wage 13,623 NIS. Illustrative example and rate-guide amounts (NIS and shekel forms): 1,346 NIS, 1,346 ש\"ח, 130 NIS, 130 ש\"ח, 2,500 NIS, 3,500 NIS, 3,750 NIS, 4,375 NIS, 4,536 NIS, 4,536 ש\"ח, 4,875 NIS, 5,040 NIS, 5,040 ש\"ח, 5,200 NIS, 5,375 NIS, 504 NIS, 504 ש\"ח, 6,100 NIS, 6,800 NIS, 60 ש\"ח, 65 ש\"ח, 65 NIS, 7,500 NIS, 72 ש\"ח, 72 NIS, 8,075 NIS, 8,075 ש\"ח, 84 NIS, 84 ש\"ח, 845 NIS, 845 ש\"ח, 90 NIS, 90 ש\"ח, 95 ש\"ח, 95 NIS. Percentages 2%, 3%, 70% appear as lump-sum-discount and income-band figures.",
"fetched_at": "2026-06-07T00:00:00Z",
"appears_in": ["SKILL.md", "SKILL_HE.md", "references/arnona-rates-guide.md"]
}
]
}
{
"author": "skills-il",
"version": "1.2.1",
"category": "tax-and-finance",
"tags": {
"he": [
"ארנונה",
"מס-רכוש",
"מס-עירוני",
"הנחות",
"ערעור-מס"
],
"en": [
"arnona",
"property-tax",
"municipal-tax",
"discounts",
"tax-appeal"
]
},
"display_name": {
"he": "אופטימיזציית ארנונה ישראלית",
"en": "Israeli Arnona Optimizer"
},
"display_description": {
"he": "חישוב ארנונה עירונית לנכסים בישראל, בדיקת זכאות להנחות, וניסוח מכתבי ערעור לוועדות ארנונה. השתמש כשמשתמש צריך להעריך תשלומי ארנונה לפי רשות מקומית, אזור וסוג שימוש בנכס, לאמת זכאות להנחות (עולים, חיילים, קשישים, נכים, הכנסה נמוכה, סטודנטים, חד-הוריות) או לנסח השגות וערעורים פורמליים עם הפניות חוקיות. מכסה את כל הרשויות הגדולות בישראל כולל תל אביב, ירושלים, חיפה ובאר שבע. אל תשתמש לחישוב מס הכנסה, מע\"מ או ביטוח לאומי, שנמצאים בסמכות רשויות אחרות.",
"en": "Calculate municipal property tax (arnona) for Israeli properties, check discount eligibility, and draft appeal letters to arnona committees. Use when a user needs to estimate arnona payments by municipality, zone, and property usage type, verify eligibility for discounts (olim, soldiers, elderly, disabled, low income, students, single parents), or prepare formal appeals with legal references. Covers all major Israeli municipalities including Tel Aviv, Jerusalem, Haifa, and Beer Sheva. Do NOT use for income tax (mas hachnasa), VAT (maam), or national insurance (bituach leumi) calculations, which fall under separate Israeli tax authorities."
},
"supported_agents": [
"claude-code",
"cursor",
"github-copilot",
"windsurf",
"opencode",
"codex",
"gemini-cli"
]
}{
"cycles": [
{
"version": "1.2.1",
"date": "2026-06-07",
"lessons": [
"CRITICAL legal-deadline fix: the EN SKILL.md said the arnona objection (hasaga) deadline is 120 days; the correct figure is 90 days per the 1976 objection law (the HE file was already correct at 90, so this was an EN/HE inconsistency). Fixed 4 EN occurrences.",
"Three MAJOR eligibility-band errors, all duplicated in the calculator script: (1) disabled bands were 50-74%/75-100% but the real regulation is medical-disability 90%+ -> 40% and earning-incapacity 75%+ -> up to 80% (no 50-74% band); (2) senior/elderly was framed by age (65-69/70+) but is actually by pension/income status (25% pension recipient, 30% income-tested <= avg wage, 100% with income supplement); (3) oleh discount is 12 months chosen within the first 24 months, not the first 12. Renamed the script discount keys to senior-pension/senior-income/senior-supplement/disabled-medical/disabled-incapacity.",
"Fixed invalid example commands: SKILL.md used --zone A for Tel Aviv, but TA uses numeric zones 1-4; changed to --zone 2.",
"Added the 2026 national arnona update coefficient (1.626%) to the rates guide; large-family discount reframed as income-tested up to ~30%; student noted as municipality-dependent (~50%).",
"Built evidence.json from scratch (legacy skill)."
]
}
]
}
Arnona Discounts Guide
Legal Framework
Arnona discounts in Israel are governed by two layers of regulation:
1. National regulations: The Arrangements in the State Economy Regulations (Local Authority Arnona) set minimum discount categories that all municipalities must offer. 2. Municipal bylaws: Each municipality may add additional discount categories or increase discount percentages beyond the national minimum (subject to Interior Ministry approval).
Discount Categories
1. Oleh Chadash (New Immigrant)
Discount: Up to 90% on up to 100 sqm, for 12 months that the oleh may choose within the first 24 months from the date registered as an oleh (teudat oleh / population-registry date)
Eligibility:
- Valid teudat oleh (immigrant certificate) from the Ministry of Aliyah and Integration
- The property must be the primary residence
- Applies to the first 100 sqm only (area above 100 sqm charged at full rate)
- Available once per lifetime per property
Required documents:
- Teudat oleh (original + copy)
- Teudat zehut (ID card)
- Lease agreement or property deed (tabu extract)
- Arnona account details
Important notes:
- The 12 discounted months can be spread across the first 24 months from the aliyah/registration date (they need not be the first 12 consecutive months), which lets the oleh time the discount to higher-rate periods
- If the oleh moves to a different municipality within the eligibility window, the discount continues in the new municipality for the remaining months
- Returning residents (toshavim chozrim) with "oleh" status from the Ministry are also eligible
- Some municipalities extend benefits beyond 12 months at reduced percentages (check locally)
2. Active-Duty Soldier (Chayyal Sadir)
Discount: Up to 100% (varies by municipality, typically 100% for lone soldiers)
Eligibility:
- Currently serving in the IDF in mandatory service (sherut sadir)
- Living alone (not with parents)
- The property is the soldier's sole residence
Required documents:
- IDF service confirmation letter (ishur sherut)
- Teudat zehut
- Lease agreement
- Declaration that the soldier lives alone
Important notes:
- Lone soldiers (chayalim bodedim) typically receive 100% exemption
- Soldiers living with family may receive partial discounts
- Career soldiers (sadir/keva) may receive different rates
- National service participants (sherut leumi) may also qualify in some municipalities
3. Senior Citizen (Ezrach Vatik)
The senior discount is structured by pension/income status, NOT by age band (65-69 vs 70+):
25% (discretionary):
- Receives an old-age, survivors, or work-injury pension from Bituach Leumi. No income test.
30% (mandatory):
- Income-tested: household income up to the national average wage (about 13,623 NIS/month as of Jan 2026, updated annually).
Up to 100%:
- Senior who also receives an income supplement (hashlamat hachnasa) within the income limit.
Eligibility (all tiers):
- Israeli resident at retirement age
- Property is primary residence
- Applies to first 100 sqm
Required documents:
- Teudat zehut (proving age)
- Income declarations (tax assessments, pension statements, Bituach Leumi statements)
- For couples: spouse's income documentation as well
- Arnona account details
Important notes:
- Some municipalities offer additional elderly discounts beyond the national minimum
- Income thresholds are updated annually by the government
- Holocaust survivors aged 65+ may combine elderly status with Holocaust survivor benefits (the higher discount applies)
4. Disabled Person (Adam Im Mugbalut)
Medical disability 90% or more:
- Discount: Up to 40% (with a Bituach Leumi medical-disability certificate of 90%+)
Earning incapacity (degree of אי-כושר) 75% or more, with a full monthly benefit:
- Discount: Up to 80%
Note: there is no 50-74% disability band in the national regulation; the bands above are the correct ones.
Eligibility:
- Disability determination from the National Insurance Institute (Bituach Leumi) or the Ministry of Defense (for security-related disability)
- Property is primary residence
- Applies to first 100 sqm
Required documents:
- Disability determination letter from Bituach Leumi (showing percentage)
- Teudat zehut
- Arnona account details
Important notes:
- Mental health disabilities are included if formally determined
- Temporary disability (e.g., work injury) may qualify for the duration of the determination
- IDF-disabled veterans receive benefits through the Ministry of Defense rehabilitation division, which may include separate arnona benefits
5. Low Income (Hachnasa Nemukha)
Discount: 20% to 80% depending on income level relative to thresholds
Income thresholds (approximate, updated annually):
| Family Size | Maximum Monthly Income for 80% Discount | Maximum for 40% Discount |
|---|---|---|
| Individual | 2,500 NIS | 3,500 NIS |
| Couple | 3,750 NIS | 5,200 NIS |
| 3 persons | 4,375 NIS | 6,100 NIS |
| 4 persons | 4,875 NIS | 6,800 NIS |
| 5+ persons | 5,375 NIS | 7,500 NIS |
Required documents:
- Tax assessments (shomot mas) for the previous year
- Pay slips (tlushei maskoret) for the last 3 months
- Bituach Leumi benefit statements
- Bank statements (some municipalities)
- Self-employed: accountant certification of income
Important notes:
- Income includes all sources: salary, pension, rental income, social security benefits, alimony
- Excludes: one-time payments, child allowances (kitzvat yeladim), disability stipends in some cases
- Municipalities may set different threshold levels; the above are national minimums
- Renewal required annually
6. Student (Student)
Discount: Up to 50% (varies significantly by municipality)
Eligibility:
- Full-time student at a recognized institution of higher education
- Living alone (not with parents)
- Income below threshold (similar to low-income thresholds)
- Age limitations may apply (typically under 30, but varies)
Required documents:
- Student enrollment confirmation (ishur limudim)
- Teudat zehut
- Lease agreement
- Income declaration
Important notes:
- Part-time students may not qualify in all municipalities
- Some municipalities limit to undergraduate students only
- Married students may qualify under different criteria
- Yeshiva students may qualify in some municipalities under similar or separate frameworks
7. Single Parent (Horeh Yachid)
Discount: Up to 20%
Eligibility:
- Recognized single parent status
- Primary caregiver of minor children
- Income below threshold
- Property is primary residence
Required documents:
- Single parent recognition (from Bituach Leumi or court order)
- Children's birth certificates
- Income documentation
- Arnona account details
8. Large Family (Mishpacha Brukat Yeladim)
Discount: Up to 20%
Eligibility:
- Four or more dependent children under 18
- Property is primary residence
- Income below threshold (higher than standard low-income threshold)
Required documents:
- Children's birth certificates or teudat zehut entries
- Income documentation
- Arnona account details
9. Bereaved Family (Mishpacha Shkula)
Discount: Up to 66%
Eligibility:
- Family of fallen IDF soldier, terror victim, or security forces member
- Recognition from the Ministry of Defense
- Property is primary residence
Required documents:
- Ministry of Defense bereaved family recognition letter
- Teudat zehut
- Arnona account details
Important notes:
- This is a permanent benefit, not time-limited
- Both parents and spouse/children of the fallen may qualify
- Applies to the first 100 sqm
10. Holocaust Survivor (Nitzolei Shoah)
Discount: Up to 66%
Eligibility:
- Recognized Holocaust survivor status
- Receiving benefits from one of the recognized frameworks (Claims Conference, German government, Austrian government, or Israeli government)
Required documents:
- Holocaust survivor recognition documentation
- Benefit payment confirmation
- Teudat zehut
11. Additional Municipal Categories
Some municipalities offer additional discounts for:
- Reservist soldiers (miluimnikim): Particularly after extended reserve duty
- Volunteer organizations: Recognized non-profits operating in the municipality
- Empty properties: Partial exemption for properties vacant 6+ months (typically 30-50%)
- New residents: Some development towns offer introductory discounts
- Multi-property discount: NOT available. Each property is assessed independently.
Application Process
General Steps
1. Determine eligibility: Review the categories above and identify the applicable discount 2. Gather documents: Collect all required documentation (originals + copies) 3. Visit or apply online: Go to the municipality's arnona department or apply through their website 4. Submit application: Fill out the discount application form (tofes bakasha le-hanacha) 5. Wait for approval: Typically 30-60 days for processing 6. Check your bill: Verify the discount appears on the next arnona bill
Deadlines
- Annual renewal: Most discounts must be renewed each year (typically January-March)
- Mid-year applications: Discounts can be requested mid-year; they apply from the date of application (not retroactively, unless specific circumstances allow)
- Retroactive claims: Some municipalities allow retroactive discount claims for up to 6 months if the qualifying condition existed but was not applied
Combining Discounts
- Only one discount applies at a time. If a person qualifies for multiple discounts, the highest percentage discount is applied.
- Exception: Some municipalities allow combining the empty property exemption with other discounts in specific circumstances.
Appeals
If a discount application is denied: 1. Request the denial in writing with the reason 2. Appeal to the arnona manager within 30 days 3. If still denied, appeal to the municipal appeals committee 4. Final recourse: Administrative Court
Arnona Rate Structure Guide
Overview
Arnona (municipal property tax) is the primary revenue source for Israeli local authorities. Rates are set annually by each municipality through a "tzav arnona" (arnona ordinance), which must be approved by the Interior Ministry and Finance Ministry. Rates are updated each year, typically increasing by a government-approved percentage (the annual arnona update rate).
Rate Determination Factors
Arnona rates are determined by four primary factors:
1. Municipality: Each local authority sets its own rates within government guidelines 2. Zone (azor): Geographic zone within the municipality affecting the rate tier 3. Usage type (sug shimush): Residential, commercial, office, industrial, or other classifications 4. Property area (shetach): Total built area in square meters
Zone Classifications by Municipality
Tel Aviv-Yafo
Tel Aviv uses numbered zones (1 through 4):
| Zone | Description | Typical Neighborhoods |
|---|---|---|
| Zone 1 | Premium | Lev Ha'Ir (city center), Rothschild area, Neve Tzedek, Sarona |
| Zone 2 | High | North Tel Aviv, Ramat Aviv, Basel area, Old North |
| Zone 3 | Medium | Florentin, Shapira, Neve Sha'anan, Kiryat Shalom |
| Zone 4 | Standard | Yaffo (Jaffa), Ajami, southern neighborhoods |
Residential rates (approximate, per sqm/year):
| Zone | Rate (NIS/sqm/year) |
|---|---|
| Zone 1 | 120-130 |
| Zone 2 | 90-100 |
| Zone 3 | 75-85 |
| Zone 4 | 65-75 |
Commercial rates (approximate, per sqm/year):
| Zone | Rate (NIS/sqm/year) |
|---|---|
| Zone 1 | 350-450 |
| Zone 2 | 280-350 |
| Zone 3 | 200-280 |
| Zone 4 | 150-200 |
Jerusalem
Jerusalem uses Hebrew letter zones (alef through heh):
| Zone | Description | Typical Neighborhoods |
|---|---|---|
| Alef (A) | Premium | Rehavia, Talbiyeh, German Colony, Yemin Moshe |
| Bet (B) | High | Katamon, Baka, Arnona, Nayot |
| Gimel (C) | Medium | Kiryat Moshe, Givat Shaul, Ramot |
| Dalet (D) | Standard | Pisgat Ze'ev, Neve Ya'akov, Gilo |
| Heh (E) | Basic | Peripheral neighborhoods |
Residential rates (approximate, per sqm/year):
| Zone | Rate (NIS/sqm/year) |
|---|---|
| Alef | 85-95 |
| Bet | 70-80 |
| Gimel | 60-70 |
| Dalet | 50-60 |
| Heh | 45-55 |
Haifa
Haifa uses zones based on the Carmel geography:
| Zone | Description | Typical Neighborhoods |
|---|---|---|
| Zone A | Upper Carmel | Central Carmel, Denya, Ahuza |
| Zone B | Mid-Carmel | French Carmel, Neve Sha'anan, Romema |
| Zone C | Lower city | Hadar, Wadi Nisnas, German Colony |
| Zone D | Industrial/port | Kiryat area, port zone |
Residential rates (approximate, per sqm/year):
| Zone | Rate (NIS/sqm/year) |
|---|---|
| Zone A | 80-90 |
| Zone B | 65-75 |
| Zone C | 50-60 |
| Zone D | 40-50 |
Beer Sheva
Beer Sheva uses numbered zones:
| Zone | Description | Typical Neighborhoods |
|---|---|---|
| Zone 1 | Premium | City center, new developments |
| Zone 2 | Standard | Established neighborhoods, Ramot |
| Zone 3 | Peripheral | Neve Ze'ev, older neighborhoods |
Residential rates (approximate, per sqm/year):
| Zone | Rate (NIS/sqm/year) |
|---|---|
| Zone 1 | 50-60 |
| Zone 2 | 40-50 |
| Zone 3 | 35-40 |
Other Major Cities (Approximate Residential Ranges)
| Municipality | Rate Range (NIS/sqm/year) | Zone System |
|---|---|---|
| Netanya | 55-85 | Numbered (1-3) |
| Rishon LeZion | 60-90 | Lettered (A-D) |
| Petah Tikva | 55-80 | Numbered (1-3) |
| Ashdod | 45-70 | Numbered (1-3) |
| Herzliya | 70-110 | Lettered (A-C) |
| Ra'anana | 75-105 | Lettered (A-C) |
| Kfar Saba | 65-90 | Numbered (1-3) |
| Bat Yam | 55-75 | Numbered (1-3) |
| Holon | 55-80 | Numbered (1-3) |
| Rehovot | 55-80 | Lettered (A-C) |
| Modiin | 60-85 | Numbered (1-3) |
| Ramat Gan | 70-100 | Lettered (A-D) |
| Givatayim | 75-100 | Lettered (A-C) |
| Bnei Brak | 55-75 | Numbered (1-3) |
Usage Types
Residential (Megurim)
- Standard living quarters
- Lowest rate tier
- Includes apartments, houses, penthouses
- Auxiliary areas (storage, balconies) billed at reduced rates (typically 50-70% of main area rate)
Commercial (Mishari)
- Shops, restaurants, retail spaces
- Typically 2-4x residential rates
- Higher zones command significantly higher commercial rates
Office (Misrad)
- Professional offices, co-working spaces
- Typically 1.5-3x residential rates
- Some municipalities classify offices differently from commercial
Industrial (Taasia)
- Factories, workshops, warehouses
- Rates vary widely by municipality and specific industrial classification
- Some industrial zones have special reduced rates to encourage employment
Special Classifications
- Agricultural land: Usually exempt or minimal rates
- Non-profit organizations: May qualify for reduced rates (requires approval)
- Government buildings: Generally exempt
- Embassies/diplomatic: Exempt under international law
- Religious institutions: Partial or full exemption depending on use
Billing Cycle
- Annual assessment: Arnona is assessed annually, effective January 1
- Billing frequency: Bimonthly (6 bills per year)
- Payment dates: Typically the 15th of every odd month (January, March, May, July, September, November)
- Annual update: Rates increase annually by a government-set coefficient (the "automatic pilot" formula: half the CPI change + half the public-sector wage-index change). For 2026 the national arnona update coefficient is 1.626%. Historically it has run roughly 1.5-3%.
- Extraordinary increases: Municipalities can request above-formula increases with ministerial approval
Area Calculation Rules
1. Main area: All roofed and enclosed living space, measured by external walls (gross area) 2. Balconies: Open balconies are typically charged at 50% of the main rate. Enclosed balconies (sealed with windows) are charged at 100%. 3. Storage rooms (machsan): Usually charged at 30-50% of the main rate 4. Parking spaces: Some municipalities charge for covered parking spaces 5. Common areas: Not charged individually (covered by the building's commercial classification if applicable) 6. Rounding: Most municipalities round up to the nearest whole sqm
Important Notes
- Rates shown are approximate and based on recent rate ordinances. Always verify with the specific municipality.
- Rates are updated annually. The figures in this guide should be cross-referenced with the current year's tzav arnona.
- New construction may have different rate classifications for the first few years.
- Mixed-use properties (e.g., ground floor commercial, upper floors residential) are billed separately for each usage area.
Domain Checklist: israeli-arnona-optimizer
Scope: estimate municipal arnona, check discount eligibility, draft objection (hasaga) letters. Category: tax-and-finance.
Must cover (core)
- Per-municipality rate structure (zones, usage types, sqm) + the annual national update coefficient.
- Discount eligibility with CORRECT bands: oleh (90%, 100 sqm, 12-of-24-months); soldier (100%); senior by pension/income status (25% / 30% income-tested / 100% with supplement), NOT by age; disabled (medical 90%+ -> 40%, earning-incapacity 75%+ -> up to 80%); low income; student (municipal); single parent (20%); large family (income-tested); bereaved & Holocaust survivor (66%). Primary residence, up to 100 sqm, one discount at a time, annual renewal.
- Objection (hasaga) process with the correct LEGAL deadlines: 90 days to file with the manager, 60 days for the manager to respond, 30 days to appeal (erur) to the committee, then Administrative Court (1976 objection law).
- A working calculator with correct rates, discount bands, and zone systems per municipality.
- Gotchas: per-municipality rate variance, discount renewal/expiry, residential-vs-commercial classification, the appeal deadline.
Should cover (advanced)
- Payment options (bimonthly, annual lump-sum discount, direct debit, arrears plans).
- Appeal letter drafting with statutory references; surveyor re-measurement; vacant-property partial exemption.
Out of scope (explicit)
- Income tax, VAT, national insurance (other authorities).
Authoritative sources
- Local Authorities (Objection to Arnona Assessment) Law 1976; Arnona Discount Regulations 1993.
- kolzchut.org.il (arnona discounts/objection), gov.il property-tax topic, municipal tzav-arnona pages.
#!/usr/bin/env python3
"""
Israeli Arnona (Municipal Property Tax) Calculator
Calculates annual and bimonthly arnona payments based on municipality,
property area, zone classification, and usage type. Supports discount
calculations for eligible populations.
Usage:
python arnona-calculator.py --municipality "tel-aviv" --area 80 --zone 2 --usage residential
python arnona-calculator.py --municipality "jerusalem" --area 70 --zone B --usage residential --discount oleh --discount-months 12
python arnona-calculator.py --list-municipalities
python arnona-calculator.py --list-discounts
Requirements:
Python 3.8+
No external dependencies
"""
import argparse
import json
import sys
from dataclasses import dataclass
from typing import Optional
# ============================================================
# Rate Tables (approximate, based on recent tzav arnona data)
# ============================================================
# Structure: municipality -> zone -> usage_type -> rate_per_sqm_per_year (NIS)
RATE_TABLES = {
"tel-aviv": {
"name": "Tel Aviv-Yafo",
"zone_system": "numbered (1-4)",
"zones": {
"1": {
"residential": 125.0,
"commercial": 400.0,
"office": 320.0,
"industrial": 180.0,
},
"2": {
"residential": 95.0,
"commercial": 310.0,
"office": 250.0,
"industrial": 150.0,
},
"3": {
"residential": 80.0,
"commercial": 240.0,
"office": 190.0,
"industrial": 120.0,
},
"4": {
"residential": 70.0,
"commercial": 175.0,
"office": 140.0,
"industrial": 95.0,
},
},
},
"jerusalem": {
"name": "Jerusalem",
"zone_system": "Hebrew letters (alef-heh / A-E)",
"zones": {
"A": {
"residential": 90.0,
"commercial": 280.0,
"office": 220.0,
"industrial": 130.0,
},
"B": {
"residential": 72.0,
"commercial": 220.0,
"office": 175.0,
"industrial": 105.0,
},
"C": {
"residential": 65.0,
"commercial": 180.0,
"office": 140.0,
"industrial": 90.0,
},
"D": {
"residential": 55.0,
"commercial": 140.0,
"office": 110.0,
"industrial": 75.0,
},
"E": {
"residential": 48.0,
"commercial": 110.0,
"office": 85.0,
"industrial": 60.0,
},
},
},
"haifa": {
"name": "Haifa",
"zone_system": "lettered (A-D)",
"zones": {
"A": {
"residential": 85.0,
"commercial": 260.0,
"office": 200.0,
"industrial": 120.0,
},
"B": {
"residential": 70.0,
"commercial": 200.0,
"office": 155.0,
"industrial": 95.0,
},
"C": {
"residential": 55.0,
"commercial": 155.0,
"office": 120.0,
"industrial": 75.0,
},
"D": {
"residential": 45.0,
"commercial": 110.0,
"office": 85.0,
"industrial": 55.0,
},
},
},
"beer-sheva": {
"name": "Beer Sheva",
"zone_system": "numbered (1-3)",
"zones": {
"1": {
"residential": 55.0,
"commercial": 170.0,
"office": 130.0,
"industrial": 80.0,
},
"2": {
"residential": 45.0,
"commercial": 130.0,
"office": 100.0,
"industrial": 65.0,
},
"3": {
"residential": 37.0,
"commercial": 100.0,
"office": 80.0,
"industrial": 50.0,
},
},
},
"netanya": {
"name": "Netanya",
"zone_system": "numbered (1-3)",
"zones": {
"1": {
"residential": 82.0,
"commercial": 250.0,
"office": 195.0,
"industrial": 110.0,
},
"2": {
"residential": 68.0,
"commercial": 195.0,
"office": 150.0,
"industrial": 90.0,
},
"3": {
"residential": 56.0,
"commercial": 150.0,
"office": 115.0,
"industrial": 70.0,
},
},
},
"rishon-lezion": {
"name": "Rishon LeZion",
"zone_system": "lettered (A-D)",
"zones": {
"A": {
"residential": 88.0,
"commercial": 270.0,
"office": 210.0,
"industrial": 125.0,
},
"B": {
"residential": 74.0,
"commercial": 215.0,
"office": 170.0,
"industrial": 100.0,
},
"C": {
"residential": 65.0,
"commercial": 175.0,
"office": 135.0,
"industrial": 85.0,
},
"D": {
"residential": 58.0,
"commercial": 140.0,
"office": 110.0,
"industrial": 70.0,
},
},
},
"petah-tikva": {
"name": "Petah Tikva",
"zone_system": "numbered (1-3)",
"zones": {
"1": {
"residential": 78.0,
"commercial": 240.0,
"office": 185.0,
"industrial": 105.0,
},
"2": {
"residential": 65.0,
"commercial": 185.0,
"office": 145.0,
"industrial": 85.0,
},
"3": {
"residential": 55.0,
"commercial": 145.0,
"office": 110.0,
"industrial": 70.0,
},
},
},
"ashdod": {
"name": "Ashdod",
"zone_system": "numbered (1-3)",
"zones": {
"1": {
"residential": 68.0,
"commercial": 210.0,
"office": 160.0,
"industrial": 95.0,
},
"2": {
"residential": 55.0,
"commercial": 165.0,
"office": 125.0,
"industrial": 78.0,
},
"3": {
"residential": 46.0,
"commercial": 130.0,
"office": 100.0,
"industrial": 62.0,
},
},
},
"herzliya": {
"name": "Herzliya",
"zone_system": "lettered (A-C)",
"zones": {
"A": {
"residential": 108.0,
"commercial": 340.0,
"office": 265.0,
"industrial": 150.0,
},
"B": {
"residential": 88.0,
"commercial": 270.0,
"office": 210.0,
"industrial": 120.0,
},
"C": {
"residential": 72.0,
"commercial": 210.0,
"office": 165.0,
"industrial": 95.0,
},
},
},
"raanana": {
"name": "Ra'anana",
"zone_system": "lettered (A-C)",
"zones": {
"A": {
"residential": 102.0,
"commercial": 320.0,
"office": 250.0,
"industrial": 140.0,
},
"B": {
"residential": 85.0,
"commercial": 255.0,
"office": 200.0,
"industrial": 115.0,
},
"C": {
"residential": 74.0,
"commercial": 210.0,
"office": 160.0,
"industrial": 95.0,
},
},
},
"ramat-gan": {
"name": "Ramat Gan",
"zone_system": "lettered (A-D)",
"zones": {
"A": {
"residential": 98.0,
"commercial": 310.0,
"office": 240.0,
"industrial": 135.0,
},
"B": {
"residential": 82.0,
"commercial": 245.0,
"office": 190.0,
"industrial": 110.0,
},
"C": {
"residential": 72.0,
"commercial": 200.0,
"office": 155.0,
"industrial": 90.0,
},
"D": {
"residential": 65.0,
"commercial": 165.0,
"office": 125.0,
"industrial": 75.0,
},
},
},
"modiin": {
"name": "Modi'in-Maccabim-Re'ut",
"zone_system": "numbered (1-3)",
"zones": {
"1": {
"residential": 82.0,
"commercial": 250.0,
"office": 195.0,
"industrial": 110.0,
},
"2": {
"residential": 70.0,
"commercial": 200.0,
"office": 155.0,
"industrial": 90.0,
},
"3": {
"residential": 60.0,
"commercial": 160.0,
"office": 125.0,
"industrial": 75.0,
},
},
},
}
# ============================================================
# Discount Definitions
# ============================================================
DISCOUNTS = {
"oleh": {
"name": "Oleh Chadash (New Immigrant)",
"name_he": "עולה חדש",
"percentage": 90,
"max_sqm": 100,
"duration_months": 12,
"description": "90% on up to 100 sqm; 12 discounted months chosen within the first 24 months from the teudat-oleh/registration date",
},
"soldier": {
"name": "Active-Duty Soldier",
"name_he": "חייל בשירות סדיר",
"percentage": 100,
"max_sqm": 100,
"duration_months": None,
"description": "Up to 100% for lone soldiers in mandatory service",
},
"senior-pension": {
"name": "Senior (vatik), pension recipient",
"name_he": "אזרח ותיק, מקבל קצבה",
"percentage": 25,
"max_sqm": 100,
"duration_months": None,
"description": "25% discretionary; receives old-age/survivors/work-injury pension; no income test",
},
"senior-income": {
"name": "Senior (vatik), income-tested",
"name_he": "אזרח ותיק, מבחן הכנסה",
"percentage": 30,
"max_sqm": 100,
"duration_months": None,
"description": "30% mandatory; household income up to the average wage",
},
"senior-supplement": {
"name": "Senior (vatik) with income supplement",
"name_he": "אזרח ותיק עם השלמת הכנסה",
"percentage": 100,
"max_sqm": 100,
"duration_months": None,
"description": "Up to 100%; also receives hashlamat hachnasa within the income limit",
},
"disabled-medical": {
"name": "Disabled, medical disability 90%+",
"name_he": "נכה, נכות רפואית 90%+",
"percentage": 40,
"max_sqm": 100,
"duration_months": None,
"description": "40% with a Bituach Leumi medical-disability certificate of 90%+",
},
"disabled-incapacity": {
"name": "Disabled, earning incapacity 75%+",
"name_he": "נכה, אי-כושר 75%+",
"percentage": 80,
"max_sqm": 100,
"duration_months": None,
"description": "Up to 80% for 75%+ loss of earning capacity with a full monthly benefit",
},
"low-income": {
"name": "Low Income",
"name_he": "הכנסה נמוכה",
"percentage": 80,
"max_sqm": 100,
"duration_months": None,
"description": "20-80% depending on income level (showing max)",
},
"student": {
"name": "Student",
"name_he": "סטודנט",
"percentage": 50,
"max_sqm": 100,
"duration_months": None,
"description": "Up to 50%, full-time student living alone",
},
"single-parent": {
"name": "Single Parent",
"name_he": "הורה יחיד",
"percentage": 20,
"max_sqm": 100,
"duration_months": None,
"description": "20% discount for recognized single parents",
},
"large-family": {
"name": "Large Family (4+ children)",
"name_he": "משפחה ברוכת ילדים",
"percentage": 30,
"max_sqm": 100,
"duration_months": None,
"description": "Income-tested, up to ~30% for families with 4+ dependent children (showing max band)",
},
"bereaved": {
"name": "Bereaved Family",
"name_he": "משפחה שכולה",
"percentage": 66,
"max_sqm": 100,
"duration_months": None,
"description": "66% discount for families of fallen soldiers/terror victims",
},
"holocaust-survivor": {
"name": "Holocaust Survivor",
"name_he": "ניצול שואה",
"percentage": 66,
"max_sqm": 100,
"duration_months": None,
"description": "66% discount for recognized Holocaust survivors",
},
}
@dataclass
class ArnonaResult:
municipality: str
municipality_name: str
zone: str
usage: str
area_sqm: float
rate_per_sqm: float
annual_base: float
discount_type: Optional[str]
discount_percentage: float
discount_area_sqm: float
full_rate_area_sqm: float
annual_discounted: float
annual_after_discount: float
bimonthly_payment: float
monthly_equivalent: float
discount_months: Optional[int]
prorated_annual: Optional[float]
def normalize_zone(zone: str) -> str:
"""Normalize zone input to match rate table keys."""
zone = zone.strip().upper()
# Map Hebrew letters to English equivalents
hebrew_map = {
"ALEF": "A", "BET": "B", "GIMEL": "C", "DALET": "D", "HEH": "E",
"A": "A", "B": "B", "C": "C", "D": "D", "E": "E",
}
if zone in hebrew_map:
return hebrew_map[zone]
# Try as number
try:
return str(int(zone))
except ValueError:
pass
return zone
def calculate_arnona(
municipality: str,
area_sqm: float,
zone: str,
usage: str = "residential",
discount_type: Optional[str] = None,
discount_months: Optional[int] = None,
) -> ArnonaResult:
"""Calculate arnona for the given parameters."""
municipality = municipality.lower().strip()
usage = usage.lower().strip()
zone = normalize_zone(zone)
if municipality not in RATE_TABLES:
available = ", ".join(sorted(RATE_TABLES.keys()))
print(f"Error: Municipality '{municipality}' not found in rate tables.", file=sys.stderr)
print(f"Available municipalities: {available}", file=sys.stderr)
sys.exit(1)
muni_data = RATE_TABLES[municipality]
if zone not in muni_data["zones"]:
available = ", ".join(sorted(muni_data["zones"].keys()))
print(
f"Error: Zone '{zone}' not valid for {muni_data['name']}.",
file=sys.stderr,
)
print(f"Available zones ({muni_data['zone_system']}): {available}", file=sys.stderr)
sys.exit(1)
zone_rates = muni_data["zones"][zone]
if usage not in zone_rates:
available = ", ".join(sorted(zone_rates.keys()))
print(f"Error: Usage type '{usage}' not found.", file=sys.stderr)
print(f"Available types: {available}", file=sys.stderr)
sys.exit(1)
rate = zone_rates[usage]
annual_base = area_sqm * rate
# Calculate discount
discount_percentage = 0.0
discount_area = 0.0
full_rate_area = area_sqm
annual_discounted = 0.0
if discount_type:
discount_type = discount_type.lower().strip()
if discount_type not in DISCOUNTS:
available = ", ".join(sorted(DISCOUNTS.keys()))
print(f"Error: Discount category '{discount_type}' not recognized.", file=sys.stderr)
print(f"Available discounts: {available}", file=sys.stderr)
sys.exit(1)
disc = DISCOUNTS[discount_type]
discount_percentage = disc["percentage"]
max_sqm = disc["max_sqm"]
# Split area into discounted and full-rate portions
discount_area = min(area_sqm, max_sqm)
full_rate_area = max(0, area_sqm - max_sqm)
discounted_portion = discount_area * rate * (discount_percentage / 100)
annual_discounted = discounted_portion
annual_after_discount = annual_base - annual_discounted
# Prorate if discount is time-limited
prorated_annual = None
if discount_months and discount_months < 12:
months_with_discount = discount_months
months_without = 12 - months_with_discount
prorated_annual = (
(annual_after_discount * months_with_discount / 12)
+ (annual_base * months_without / 12)
)
effective_annual = prorated_annual if prorated_annual is not None else annual_after_discount
bimonthly = effective_annual / 6
monthly = effective_annual / 12
return ArnonaResult(
municipality=municipality,
municipality_name=muni_data["name"],
zone=zone,
usage=usage,
area_sqm=area_sqm,
rate_per_sqm=rate,
annual_base=annual_base,
discount_type=discount_type,
discount_percentage=discount_percentage,
discount_area_sqm=discount_area,
full_rate_area_sqm=full_rate_area,
annual_discounted=annual_discounted,
annual_after_discount=annual_after_discount,
bimonthly_payment=bimonthly,
monthly_equivalent=monthly,
discount_months=discount_months,
prorated_annual=prorated_annual,
)
def format_result(result: ArnonaResult) -> str:
"""Format the calculation result as a readable report."""
lines = [
"=" * 60,
"ARNONA CALCULATION REPORT",
"=" * 60,
"",
f"Municipality: {result.municipality_name}",
f"Zone: {result.zone}",
f"Usage type: {result.usage}",
f"Property area: {result.area_sqm:.1f} sqm",
f"Rate per sqm: {result.rate_per_sqm:.2f} NIS/year",
"",
"-" * 40,
"BASE CALCULATION",
"-" * 40,
f"Annual base arnona: {result.annual_base:,.2f} NIS",
"",
]
if result.discount_type:
disc = DISCOUNTS[result.discount_type]
lines.extend([
"-" * 40,
"DISCOUNT APPLIED",
"-" * 40,
f"Discount type: {disc['name']}",
f"Discount rate: {result.discount_percentage:.0f}%",
f"Discount applies to: {result.discount_area_sqm:.1f} sqm (max {disc['max_sqm']} sqm)",
])
if result.full_rate_area_sqm > 0:
lines.append(
f"Full-rate area: {result.full_rate_area_sqm:.1f} sqm"
)
lines.extend([
f"Annual savings: {result.annual_discounted:,.2f} NIS",
f"Annual after discount: {result.annual_after_discount:,.2f} NIS",
"",
])
if result.prorated_annual is not None:
lines.extend([
"-" * 40,
"PRORATED CALCULATION",
"-" * 40,
f"Discount months remaining: {result.discount_months}",
f"Full-rate months: {12 - result.discount_months}",
f"Prorated annual total: {result.prorated_annual:,.2f} NIS",
"",
])
effective = result.prorated_annual if result.prorated_annual else result.annual_after_discount
lines.extend([
"-" * 40,
"PAYMENT SUMMARY",
"-" * 40,
f"Effective annual total: {effective:,.2f} NIS",
f"Bimonthly payment: {result.bimonthly_payment:,.2f} NIS",
f"Monthly equivalent: {result.monthly_equivalent:,.2f} NIS",
"",
"=" * 60,
"NOTE: These rates are approximate estimates based on recent",
"municipal rate ordinances. Actual rates may vary. Always",
"verify with your municipality's official arnona department.",
"=" * 60,
])
return "\n".join(lines)
def format_result_json(result: ArnonaResult) -> str:
"""Format the result as JSON for programmatic use."""
data = {
"municipality": result.municipality,
"municipality_name": result.municipality_name,
"zone": result.zone,
"usage": result.usage,
"area_sqm": result.area_sqm,
"rate_per_sqm": result.rate_per_sqm,
"annual_base_nis": round(result.annual_base, 2),
"discount": None,
"effective_annual_nis": round(
result.prorated_annual
if result.prorated_annual
else result.annual_after_discount,
2,
),
"bimonthly_payment_nis": round(result.bimonthly_payment, 2),
"monthly_equivalent_nis": round(result.monthly_equivalent, 2),
}
if result.discount_type:
data["discount"] = {
"type": result.discount_type,
"percentage": result.discount_percentage,
"discount_area_sqm": result.discount_area_sqm,
"annual_savings_nis": round(result.annual_discounted, 2),
}
if result.discount_months:
data["discount"]["remaining_months"] = result.discount_months
data["discount"]["prorated_annual_nis"] = round(result.prorated_annual, 2) if result.prorated_annual else None
return json.dumps(data, indent=2, ensure_ascii=False)
def list_municipalities():
"""Print all supported municipalities."""
print("Supported Municipalities:")
print("-" * 50)
for key in sorted(RATE_TABLES.keys()):
muni = RATE_TABLES[key]
zones = ", ".join(sorted(muni["zones"].keys()))
print(f" {key:20s} {muni['name']:25s} Zones: {zones}")
print()
print(f"Total: {len(RATE_TABLES)} municipalities")
def list_discounts():
"""Print all supported discount categories."""
print("Supported Discount Categories:")
print("-" * 60)
for key in sorted(DISCOUNTS.keys()):
disc = DISCOUNTS[key]
duration = f"{disc['duration_months']} months" if disc['duration_months'] else "Ongoing"
print(f" {key:20s} {disc['percentage']:3d}% Max {disc['max_sqm']:3d} sqm {duration}")
print(f" {'':20s} {disc['description']}")
print()
def main():
parser = argparse.ArgumentParser(
description="Israeli Arnona (Municipal Property Tax) Calculator",
formatter_class=argparse.RawDescriptionHelpFormatter,
epilog="""
Examples:
%(prog)s --municipality tel-aviv --area 80 --zone 2 --usage residential
%(prog)s --municipality jerusalem --area 70 --zone B --usage residential --discount oleh --discount-months 6
%(prog)s --list-municipalities
%(prog)s --list-discounts
""",
)
parser.add_argument("--municipality", "-m", help="Municipality name (e.g., tel-aviv, jerusalem)")
parser.add_argument("--area", "-a", type=float, help="Property area in square meters")
parser.add_argument("--zone", "-z", help="Zone classification (varies by municipality)")
parser.add_argument("--usage", "-u", default="residential",
choices=["residential", "commercial", "office", "industrial"],
help="Property usage type (default: residential)")
parser.add_argument("--discount", "-d", help="Discount category (e.g., oleh, soldier, senior-income, disabled-medical)")
parser.add_argument("--discount-months", type=int, help="Remaining months of discount eligibility")
parser.add_argument("--json", action="store_true", help="Output in JSON format")
parser.add_argument("--list-municipalities", action="store_true", help="List all supported municipalities")
parser.add_argument("--list-discounts", action="store_true", help="List all supported discount categories")
args = parser.parse_args()
if args.list_municipalities:
list_municipalities()
return
if args.list_discounts:
list_discounts()
return
if not args.municipality or not args.area or not args.zone:
parser.error("--municipality, --area, and --zone are required for calculation")
if args.area <= 0:
parser.error("Property area must be positive")
result = calculate_arnona(
municipality=args.municipality,
area_sqm=args.area,
zone=args.zone,
usage=args.usage,
discount_type=args.discount,
discount_months=args.discount_months,
)
if args.json:
print(format_result_json(result))
else:
print(format_result(result))
if __name__ == "__main__":
main()
אופטימיזציית ארנונה ישראלית
הוראות
שלב 1: איסוף פרטי הנכס
לפני חישוב ארנונה כלשהו, תאספו את המידע הבא מהמשתמש:
1. רשות מקומית (עירייה): באיזו עיר או מועצה מקומית נמצא הנכס (למשל, תל אביב-יפו, ירושלים, חיפה, באר שבע, נתניה, ראשון לציון). 2. שטח הנכס: שטח כולל במטרים רבועים (מ"ר). תבחינו בין שטח עיקרי לשטחי עזר (מחסנים, מרפסות, חניות) כי אלו מחויבים בתעריפים שונים. 3. סיווג אזור: אזור הארנונה בתחום הרשות המקומית. כל עיר מחולקת לאזורים עם דרגות תעריף שונות. שאלו את המשתמש לגבי האזור שלהם או עזרו להם לקבוע אותו לפי הכתובת. 4. סוג שימוש: מגורים, מסחרי, משרד, תעשייה, או שימושים מיוחדים אחרים. התעריפים משתנים משמעותית לפי סוג השימוש. 5. תקופת חיוב: הארנונה מחויבת דו-חודשית (כל חודשיים) ברוב הרשויות. התעריף השנתי מחולק ל-6 תקופות תשלום.
שלב 2: חישוב ארנונה בסיסית
השתמשו בסקריפט מחשבון הארנונה לחישוב הארנונה השנתית הבסיסית:
python scripts/arnona-calculator.py --municipality "tel-aviv" --area 80 --zone 2 --usage residentialהמחשבון מיישם את התעריף הנכון למ"ר על בסיס טבלאות התעריפים המפורסמות של הרשות. מבני תעריפים עיקריים:
- תל אביב-יפו: תעריפים נעים בין כ-75 ל-130 ש"ח/מ"ר/שנה למגורים לפי אזור (אזורים 1-4). תעריפים מסחריים גבוהים פי 2-4.
- ירושלים: תעריפים נעים בין כ-55 ל-95 ש"ח/מ"ר/שנה למגורים. מחולקת לאזורים א' עד ה'.
- חיפה: תעריפים נעים בין כ-50 ל-90 ש"ח/מ"ר/שנה למגורים. נמוכים יחסית בהשוואה לתל אביב.
- באר שבע: תעריפים נעים בין כ-35 ל-60 ש"ח/מ"ר/שנה למגורים. בין הנמוכים בערים הגדולות.
עיינו ב-references/arnona-rates-guide.md לטבלאות תעריפים מפורטות וכללי סיווג אזורים.
שלב 3: בדיקת זכאות להנחות
אחרי שחישבתם הארנונה הבסיסית, תבדקו אם המשתמש זכאי להנחות כלשהן. החוק הישראלי (תקנות הסדרים במשק המדינה ותקנוני הרשויות) מעניק הנחות לאוכלוסיות ספציפיות:
| קטגוריה | הנחה | דרישות עיקריות |
|---|---|---|
| עולה חדש | עד 90% על עד 100 מ"ר | 12 חודשי הנחה לבחירה בתוך 24 החודשים הראשונים ממועד תעודת העולה / הרישום; דירת מגורים עיקרית |
| חייל בשירות סדיר | עד 100% | אישור שירות מצה"ל; חייל בודד/זכאי |
| אזרח ותיק, מקבל קצבה | עד 25% (רשות) | מקבל קצבת זקנה / שאירים / נפגעי עבודה; ללא מבחן הכנסה |
| אזרח ותיק, מבחן הכנסה | 30% (חובה) | הכנסת משק הבית עד השכר הממוצע |
| אזרח ותיק עם השלמת הכנסה | עד 100% | מקבל גם השלמת הכנסה בגבולות ההכנסה |
| נכה, נכות רפואית 90%+ | עד 40% | תעודת נכות רפואית מהמוסד לביטוח לאומי (90%+) |
| נכה, אי-כושר 75%+ | עד 80% | אובדן כושר השתכרות 75%+ עם קצבה חודשית מלאה |
| הכנסה נמוכה (יחיד) | 20-80% | הכנסה מתחת לסף הרשות (משתנה לפי עיר) |
| סטודנט | עד ~50% (תלוי רשות) | לפי שיקול דעת בחוק העזר העירוני; אין שיעור ארצי אחיד |
| הורה יחיד | עד 20% | מעמד הורה יחיד מוכר |
| משפחה ברוכת ילדים (4+ ילדים) | מבחן הכנסה, עד ~30% | ארבעה ילדים תלויים או יותר; מדרגות הכנסה |
| משפחה שכולה | עד 66% | הכרה כמשפחה שכולה ממשרד הביטחון |
| ניצולי שואה | עד 66% | מעמד ניצול שואה מוכר |
הריצו את המחשבון עם דגלי הנחה:
python scripts/arnona-calculator.py --municipality "tel-aviv" --area 80 --zone 2 --usage residential --discount oleh --discount-months 8עיינו ב-references/arnona-discounts-guide.md לרשימה המלאה של קטגוריות ההנחה, תנאי הזכאות, מסמכים נדרשים, ושינויים ספציפיים לרשויות.
כללים חשובים לגבי הנחות:
- הנחות חלות רק על דירת מגורים עיקרית (דירה עיקרית), עד 100 מ"ר ברוב הרשויות.
- שטח מעל תקרת ההנחה מחויב בתעריף מלא.
- ניתן ליישם הנחה אחת בלבד בכל פעם (ההנחה הגבוהה ביותר).
- יש לחדש הנחות מדי שנה ברוב הרשויות.
- מועד הגשת הבקשה משתנה לפי רשות (בדרך כלל ינואר-מרץ).
שלב 4: ניסוח מכתבי ערעור
אם המשתמש סבור שהשומה שלו שגויה, עזרו לו לנסח מכתב השגה לוועדת ההשגות של הרשות. עילות נפוצות להשגה:
1. מדידת שטח שגויה: השטח הרשום ברשות שונה מהשטח בפועל. יש לבקש מדידה מחודשת. 2. סיווג אזור שגוי: הנכס צריך להיות מסווג באזור בעל תעריף נמוך יותר על סמך מיקומו. 3. סיווג שימוש שגוי: הנכס מסווג כמסחרי אך בפועל משמש למגורים (או להפך). 4. בעיות מבניות: חלקים מהנכס אינם ראויים למגורים (למשל, בשיפוץ, נזקי הצפה, ליקויי מבנה). 5. נכס ריק/פנוי: הנכס עומד ריק לתקופה ממושכת (חלק מהרשויות מעניקות פטור חלקי לנכסים ריקים, בדרך כלל עד 6 חודשים).
הליך ההשגה:
- הגישו השגה תוך 90 יום מקבלת שובר הארנונה.
- מנהל הארנונה חייב להשיב תוך 60 יום.
- אם אינכם מרוצים מהחלטת המנהל, ערערו לוועדת הערר תוך 30 יום.
- ערעורים נוספים מוגשים לבית המשפט לעניינים מנהליים.
כללו את המרכיבים הבאים במכתב ההשגה:
- כתובת הנכס המלאה ומספר החשבון
- העילה הספציפית להשגה (עם הפניה חוקית לתקנות הארנונה)
- ראיות תומכות (דו"ח מודד, תמונות, הסכם שכירות)
- הסעד המבוקש (שינוי סיווג, תיקון שטח, החלת הנחה)
שלב 5: ניתוח אפשרויות תשלום
עזרו למשתמש להבין את אפשרויות התשלום:
1. תשלומים דו-חודשיים: 6 תשלומים סטנדרטיים בשנה. ללא עמלות נוספות. 2. תשלום שנתי חד-פעמי: חלק מהרשויות מציעות הנחה של 1-2% לתשלום מלא מראש (בדרך כלל עד 31 בינואר). 3. הוראת קבע: חיוב אוטומטי בבנק. חלק מהרשויות מציעות הנחה קטנה. 4. הסדר תשלומים לחובות: אם למשתמש יש חוב ארנונה, רשויות בדרך כלל מציעות הסדרי תשלומים. ריבית על איחורים נקבעת בפקודת העיריות.
שלב 6: מסירת פרטי קשר של הרשות
הפנו את המשתמש למחלקת הארנונה הרלוונטית:
- תל אביב: tel-aviv.gov.il, *6195, arnona@mail.tel-aviv.gov.il
- ירושלים: jerusalem.muni.il, *6226, arnona@jerusalem.muni.il
- חיפה: haifa.muni.il, *2404, arnona@haifa.muni.il
- באר שבע: beer-sheva.muni.il, *6230
הזכירו למשתמש שכל התקשורת עם מחלקת הארנונה צריכה להיות מתועדת בכתב ולהישלח בדואר רשום או דרך הפורטל המקוון של הרשות.
דוגמאות
דוגמה 1: חישוב ארנונה לדירה בתל אביב
המשתמש אומר: "יש לי דירה של 85 מ"ר בתל אביב, אזור 2. כמה ארנונה אני צריך לשלם?"
פעולות: 1. הפעלת מחשבון הארנונה: python scripts/arnona-calculator.py --municipality "tel-aviv" --area 85 --zone 2 --usage residential 2. סקירת הפלט המציג את התעריף למ"ר לאזור 2 מגורים בתל אביב (כ-95 ש"ח/מ"ר/שנה) 3. חישוב הסכום השנתי: 85 מ"ר x 95 ש"ח = 8,075 ש"ח/שנה 4. חישוב התשלום הדו-חודשי: 8,075 / 6 = כ-1,346 ש"ח לתקופת חיוב
תוצאה: הארנונה השנתית המשוערת היא כ-8,075 ש"ח (כ-1,346 ש"ח דו-חודשי). הסוכן מסביר שהתעריפים מתעדכנים מדי שנה על ידי הרשות ועשויים להשתנות מעט מהאומדנים האלה. המשתמש מופנה לאמת מול שובר הארנונה בפועל.
דוגמה 2: בדיקת זכאות להנחת עולה חדש
המשתמש אומר: "עליתי לארץ לפני 6 חודשים ואני שוכר דירה של 70 מ"ר בירושלים, אזור ב'. לאילו הנחות אני זכאי?"
פעולות: 1. זיהוי המשתמש כעולה חדש שעדיין בתוך חלון 24 החודשים (6 חודשים לאחר העלייה) 2. עיון ב-references/arnona-discounts-guide.md לכללי הנחת עולה 3. הפעלת המחשבון עם הנחת עולה: python scripts/arnona-calculator.py --municipality "jerusalem" --area 70 --zone B --usage residential --discount oleh --discount-months 12 4. חישוב ארנונה בסיסית: 70 מ"ר x כ-72 ש"ח/מ"ר = 5,040 ש"ח/שנה 5. החלת 90% על עד 100 מ"ר: 12 חודשי הנחה מורידים את החיוב השנתי לכ-504 ש"ח (חיסכון של כ-4,536 ש"ח)
תוצאה: כעולה חדש, המשתמש זכאי להנחה של 90% על עד 100 מ"ר ל-12 חודשים, שאותם ניתן לנצל בכל עת בתוך 24 החודשים הראשונים מהעלייה (לא חייבים להיות 12 החודשים הראשונים ברצף). לדירה של 70 מ"ר בירושלים אזור ב', הארנונה השנתית הבסיסית היא כ-5,040 ש"ח; עם הנחה של 90% על פני 12 חודשים המשתמש משלם רק כ-504 ש"ח (כ-84 ש"ח דו-חודשי). להגשה: להביא תעודת עולה והסכם שכירות למחלקת הארנונה בעיריית ירושלים או להגיש מקוון באתר jerusalem.muni.il.
דוגמה 3: ניסוח השגה על מדידת שטח שגויה
המשתמש אומר: "בשובר הארנונה שלי כתוב שהדירה שלי היא 95 מ"ר אבל מדדתי והיא רק 82 מ"ר. אני בחיפה. איך אני מגיש השגה?"
פעולות: 1. זיהוי עילת ההשגה: מדידת שטח שגויה (פער של 13 מ"ר) 2. חישוב ההשפעה הכספית: 13 מ"ר x כ-65 ש"ח/מ"ר = כ-845 ש"ח/שנה חיוב יתר 3. ניסוח מכתב השגה בהתייחסות לסעיף 3(א) לתקנות הסדרים במשק המדינה (ארנונה כללית) 4. הכללת הנחיות לקבלת מדידת מודד מקצועית 5. מסירת כתובת ועדת ההשגות של חיפה ומועד אחרון להגשה
תוצאה: הסוכן מנסח מכתב השגה רשמי בעברית לממונה על הארנונה בעיריית חיפה, המציין את הפער בין השטח הרשום (95 מ"ר) לשטח בפועל (82 מ"ר), מפנה לתקנה הרלוונטית, מבקש מדידה מחודשת על ידי מודד מטעם העירייה, ומבקש תיקון רטרואקטיבי והחזר. המשתמש מופנה לצרף דו"ח מדידה של מודד פרטי ולשלוח בדואר רשום תוך 90 יום ממועד השובר.
משאבים מצורפים
סקריפטים
scripts/arnona-calculator.py-- חישוב תשלומי ארנונה לפי רשות מקומית, שטח, אזור וסוג שימוש, עם אפשרות להחלת הנחות. הפעלה:python scripts/arnona-calculator.py --help
מסמכי עזר
references/arnona-rates-guide.md-- מדריך מקיף למבני תעריפי ארנונה, סיווגי אזורים, סוגי שימוש ומחזורי חיוב ברשויות מקומיות בישראל. עיינו כשצריך לקבוע את התעריף הנכון לנכס ספציפי.references/arnona-discounts-guide.md-- מדריך מלא לכל קטגוריות הנחות הארנונה, תנאי זכאות, מסמכים נדרשים ושינויים ספציפיים לרשויות. עיינו כשבודקים אם משתמש זכאי להנחות ארנונה.
קישורי עזר
| מקור | קישור | מה לבדוק |
|---|---|---|
| כל זכות: ארנונה | https://www.kolzchut.org.il/he/ארנונה | מדריך פשוט לחובות ארנונה, הנחות וזכויות ערעור |
| gov.il: ארנונה (מס נכסים) | https://www.gov.il/he/departments/topics/property_tax_arnona | עמוד נושא רשמי במשרד הפנים: חקיקה ותנאי זכאות להנחות |
| ביטוח לאומי: נכות | https://www.btl.gov.il/benefits/Disability/Pages/default.aspx | מקור לאחוזי הנכות שמשמשים לזכאות להנחת ארנונה |
| עיריית תל אביב | https://www.tel-aviv.gov.il/ | צו ארנונה, תעריפים נוכחיים, תשלום מקוון, ערעורים |
| עיריית ירושלים | https://www.jerusalem.muni.il/ | תעריפים לאזורי א-ה בירושלים, תשלום, בקשות הנחה |
מלכודות נפוצות
- תעריפי ארנונה משתנים באופן דרמטי בין רשויות מקומיות. סוכנים עלולים להשתמש בתעריפי תל אביב לנכסים בחיפה או להפך. תמיד תאמתו תעריפים מול העירייה או המועצה הספציפית.
- הנחות ארנונה כפופות לחלונות זכאות קפדניים ודורשות חידוש שנתי. סוכנים עלולים להציע הנחות שהמשתמש כבר לא זכאי להן או שפקעו.
- סיווג הנכס (מגורים מול מסחרי) משפיע משמעותית על תעריפי הארנונה. סוכנים עלולים לסווג בטעות משרדים ביתיים, שבישראל בדרך כלל עדיין ממוסים בתעריפי מגורים אלא אם שונה יעודם רשמית.
- מועד אחרון לערעור ארנונה הוא בדרך כלל 90 יום מתאריך השומה השנתית. סוכנים עלולים לנסח ערעורים אחרי שהמועד עבר, מה שהופך אותם לבטלים.
פתרון בעיות
שגיאה: "Municipality not found in rate tables"
סיבה: למחשבון הארנונה אין נתוני תעריפים לרשות המקומית שצוינה. למועצות מקומיות ומועצות אזוריות קטנות יותר יש טבלאות תעריפים משלהן שעשויות לא להיכלל. פתרון: תבדקו את איות שם הרשות. השתמשו בדגל --list-municipalities לצפייה בכל הרשויות הנתמכות. לרשויות שאינן נתמכות, פנו ישירות לאתר הרשות לצו הארנונה המפורסם שלהם. ניתן גם לחפש "[שם רשות] צו ארנונה [שנה]" למציאת הפרסום הרשמי.
שגיאה: "Discount category not recognized"
סיבה: סוג ההנחה שצוין אינו תואם לאחת מקטגוריות ההנחה הנתמכות במחשבון. פתרון: הריצו python scripts/arnona-calculator.py --list-discounts לצפייה בכל קטגוריות ההנחה הנתמכות. טעות נפוצה היא שימוש ב-"immigrant" במקום "oleh". הקטגוריות הנתמכות הן: oleh, soldier, senior-pension, senior-income, senior-supplement, disabled-medical, disabled-incapacity, low-income, student, single-parent, large-family, bereaved, holocaust-survivor.
שגיאה: "Zone not valid for this municipality"
סיבה: כל רשות מקומית משתמשת במערכת סיווג אזורים משלה. תל אביב משתמשת באזורים ממוספרים (1-4), ירושלים משתמשת באזורים לפי אותיות עבריות (א'-ה'), ולערים אחרות יש מערכות משלהן. פתרון: תבדקו את סיווג האזורים לרשות הספציפית שלכם. אם אינכם בטוחים באזור, עיינו בשובר ארנונה קודם (האזור מופיע בו), או פנו למחלקת הארנונה של הרשות. הקובץ references/arnona-rates-guide.md מפרט את מערכות האזורים לכל רשות נתמכת.
שגיאה: "Cannot determine appeal deadline"
סיבה: מועד הגשת ההשגה תלוי במועד קבלת שובר הארנונה, והמערכת אינה יכולה לאמת את תאריך הקבלה. פתרון: הכלל הכללי הוא 90 יום ממועד שובר הארנונה להגשת השגה למנהל הארנונה. לאחר קבלת החלטת המנהל, למשתמש יש 30 יום לערער לוועדת הערר. תמיד תמליצו להגיש מוקדם ככל האפשר ולשמור הוכחה למועד ההגשה (אישור דואר רשום או אישור הגשה מקוונת).
Related skills
FAQ
Is Israeli Arnona Optimizer safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.