团体保险 vs 个人保险
你的雇主提供了医疗保险——这是好事。但很多人以为有了公司保险就够了,直到某天离职或生病才发现缺口。本章帮你厘清团体险与个人险的分工。
团体险 vs 个人险:结构对比
graph LR
EMP[雇员] -->|受益人| GROUP[雇主团体险
Group Insurance] EMP -->|保单持有人| PERSONAL[个人险
Personal Insurance] GROUP -->|特点| G1["🏢 雇主付费(全部或部分)"] GROUP -->|特点| G2["📋 离职 = 失去保障"] GROUP -->|特点| G3["⬇️ 通常保额较低"] GROUP -->|特点| G4["✓ 无需健康申报(通常)"] PERSONAL -->|特点| P1["👤 你自己付费"] PERSONAL -->|特点| P2["♾️ 终生持有,不受雇主影响"] PERSONAL -->|特点| P3["⬆️ 保额可按需定制"] PERSONAL -->|特点| P4["📝 需要健康申报和核保"] style GROUP fill:#e3f2fd,stroke:#1565c0,stroke-width:2px style PERSONAL fill:#c8e6c9,stroke:#388e3c,stroke-width:2px
Group Insurance] EMP -->|保单持有人| PERSONAL[个人险
Personal Insurance] GROUP -->|特点| G1["🏢 雇主付费(全部或部分)"] GROUP -->|特点| G2["📋 离职 = 失去保障"] GROUP -->|特点| G3["⬇️ 通常保额较低"] GROUP -->|特点| G4["✓ 无需健康申报(通常)"] PERSONAL -->|特点| P1["👤 你自己付费"] PERSONAL -->|特点| P2["♾️ 终生持有,不受雇主影响"] PERSONAL -->|特点| P3["⬆️ 保额可按需定制"] PERSONAL -->|特点| P4["📝 需要健康申报和核保"] style GROUP fill:#e3f2fd,stroke:#1565c0,stroke-width:2px style PERSONAL fill:#c8e6c9,stroke:#388e3c,stroke-width:2px
团体险的真实保障水平
from dataclasses import dataclass, field
from enum import Enum
from typing import Optional
@dataclass
class GroupInsurancePlan:
"""
雇主团体险典型方案模型
数据基于马来西亚中型企业典型配置
"""
plan_tier: str # "基础" / "中级" / "高端"
# 医疗保障
annual_medical_limit_rm: float
room_board_per_night_rm: float
as_charged: bool
# 寿险
life_coverage_rm: float # 通常是年薪的倍数
# 意外险
pa_coverage_rm: float
# 牙科
dental_limit_rm: float
# 光学
optical_limit_rm: float
# 门诊
outpatient_limit_rm: float
# 员工人均年成本(雇主视角)
employer_cost_per_employee_rm: float
group_plans = [
GroupInsurancePlan(
plan_tier="基础(SME 小型企业)",
annual_medical_limit_rm=30_000,
room_board_per_night_rm=150,
as_charged=False,
life_coverage_rm=50_000,
pa_coverage_rm=50_000,
dental_limit_rm=500,
optical_limit_rm=200,
outpatient_limit_rm=1_000,
employer_cost_per_employee_rm=1_500,
),
GroupInsurancePlan(
plan_tier="中级(中型企业)",
annual_medical_limit_rm=100_000,
room_board_per_night_rm=300,
as_charged=True,
life_coverage_rm=150_000,
pa_coverage_rm=100_000,
dental_limit_rm=800,
optical_limit_rm=400,
outpatient_limit_rm=2_000,
employer_cost_per_employee_rm=3_500,
),
GroupInsurancePlan(
plan_tier="高端(大型企业 / 外资)",
annual_medical_limit_rm=500_000,
room_board_per_night_rm=500,
as_charged=True,
life_coverage_rm=300_000,
pa_coverage_rm=200_000,
dental_limit_rm=1_500,
optical_limit_rm=600,
outpatient_limit_rm=3_000,
employer_cost_per_employee_rm=8_000,
),
]
print("雇主团体险典型方案对比")
print(f"{'方案':<22} {'医疗年限':>12} {'病房/晚':>10} {'寿险':>12} {'意外险':>12}")
print("─" * 72)
for plan in group_plans:
print(
f"{plan.plan_tier:<22} "
f"RM {plan.annual_medical_limit_rm/1e3:>6.0f}k "
f"RM {plan.room_board_per_night_rm:>5.0f} "
f"RM {plan.life_coverage_rm/1e3:>6.0f}k "
f"RM {plan.pa_coverage_rm/1e3:>6.0f}k"
)
团体险的五大隐患
| 隐患 | 说明 | 影响 |
|---|---|---|
| 离职失保 | 离职立即失去所有团体险保障 | 换工作间隙若生病,无医疗保障 |
| 保额不足 | 多数团体险医疗年限 RM 30k–150k | 癌症或重大手术费可能超出 |
| 保障退休后消失 | 65 岁退休后通常不再纳入团体险 | 退休后才是医疗费急速增加的时期 |
| 无法续保至老年 | 个人老年时若无资产,新个人险极贵 | 50 岁后才买医疗卡保费高 3–5 倍 |
| 保障不跟人走 | 团体险保障仅限在职期间 | 失业 / 创业期间无保障 |
缺口分析模型
@dataclass
class InsuranceGapAnalysis:
"""
计算个人保险补缺需求
"""
monthly_income_rm: float
age: int
has_dependents: bool
# 团体险现有保障
group_medical_rm: float = 0.0
group_life_rm: float = 0.0
group_pa_rm: float = 0.0
# 建议保障目标
TARGET_MEDICAL_RM = 1_000_000 # 医疗卡目标年限
TARGET_LIFE_YEARS = 10 # 寿险目标:收入 × 10 年
TARGET_PA_RM = 500_000 # 意外险目标
@property
def target_life_rm(self) -> float:
return self.monthly_income_rm * 12 * self.TARGET_LIFE_YEARS if self.has_dependents else 0
@property
def medical_gap_rm(self) -> float:
return max(0, self.TARGET_MEDICAL_RM - self.group_medical_rm)
@property
def life_gap_rm(self) -> float:
return max(0, self.target_life_rm - self.group_life_rm)
@property
def pa_gap_rm(self) -> float:
return max(0, self.TARGET_PA_RM - self.group_pa_rm)
def get_recommendation(self) -> list[str]:
recs = []
if self.medical_gap_rm > 0:
recs.append(f"购买个人医疗卡(目标年限 RM {self.TARGET_MEDICAL_RM/1e6:.0f}M,缺口 RM {self.medical_gap_rm/1e3:.0f}k)")
if self.life_gap_rm > 0:
recs.append(f"购买个人寿险(缺口 RM {self.life_gap_rm/1e3:.0f}k)")
if self.pa_gap_rm > 0:
recs.append(f"补充个人意外险(缺口 RM {self.pa_gap_rm/1e3:.0f}k)")
if not recs:
recs = ["✓ 团体险保障已充足,暂不需要额外个人险"]
return recs
# 演示:月薪 RM 6,000,有家庭,公司基础团体险
gap = InsuranceGapAnalysis(
monthly_income_rm=6_000,
age=32,
has_dependents=True,
group_medical_rm=100_000,
group_life_rm=100_000,
group_pa_rm=100_000,
)
print(f"分析人:月薪 RM {gap.monthly_income_rm:,.0f},{gap.age}岁,有受抚养人")
print(f"医疗险缺口:RM {gap.medical_gap_rm:,.0f}")
print(f"寿险缺口:RM {gap.life_gap_rm:,.0f}")
print(f"意外险缺口:RM {gap.pa_gap_rm:,.0f}")
print("\n建议行动:")
for rec in gap.get_recommendation():
print(f" → {rec}")
正确分工策略
| 保险类型 | 团体险的角色 | 个人险的角色 |
|---|---|---|
| 医疗险 | 补充住院自付额 / 小额门诊 | 主力保障,确保大病不破产 |
| 牙科 / 光学 | 主力(免费使用) | 通常不需要额外购买 |
| 意外险 | 基础保障 | 如职业风险高,补充个人意外险 |
| 寿险 | 基础保障 | 主力(雇主寿险通常不够) |
| 严重疾病险 | 通常无此保障 | 必须个人购买 |
本章小结
- 团体险是福利,不是保险规划:离职即失效,保额通常不足
- 医疗卡必须是个人险:不依赖雇主,不受失业/离职影响
- 双重保障是合理安排:团体险的门诊/牙科福利充分利用,个人险覆盖大病风险
- 越早买个人险越便宜:30 岁 vs 45 岁购买医疗卡,年保费差距 2–3 倍
- 严重疾病险团体险几乎不提供:这类保障必须自行购买
进入第三章:定期 vs 全寿 vs 投资连结