이 글의 배경이 되는 이야기는 15화: 감칠맛 조미료의 정체와 16화: 법이 바뀌면 앱도 바뀌어야 한다에서 읽을 수 있습니다.
이 글을 읽으면 알 수 있는 것
- “기피성분”을 왜 2단계(위험/안전)가 아닌 4단계로 나눴는지
- 각 분류의 법적·과학적 근거 기준
- 분류가 UI 색상과 표현 방식에 미치는 영향
문제: “이 성분이 위험한가요?”
식품 성분 분석 서비스를 만들면, 사용자로부터 가장 많이 받게 될 질문이 있습니다.
“이 첨가물, 먹어도 괜찮은 건가요?”
이 질문에 “예” 또는 “아니오”로 답하는 것은 위험합니다. 이유가 여러 가지입니다.
법적 리스크. 식약처가 허가한 첨가물을 “위험하다”고 표시하면, 표시광고법 위반 소지가 있습니다. 반대로, 법정 알레르겐을 “안전하다”고 표시하면 알레르기 환자에게 위험합니다.
과학적 근거. MSG(L-글루탐산나트륨)는 식약처와 FDA, WHO 모두 안전하다고 평가합니다. 하지만 회피하는 소비자가 있고, 그 선택을 존중해야 합니다.
다양한 회피 이유. 땅콩은 알레르기 때문에 피하고, 카페인은 임신 때문에 피하고, 합성색소는 인식 때문에 피하고, 동물성 성분은 윤리 때문에 피합니다. 이 네 가지를 같은 “위험”으로 묶을 수 없습니다.
갈림길: 2단계 vs 4단계
| 방식 | 구조 | 문제 |
|---|---|---|
| 2단계 (위험/안전) | 빨강/초록 | ”위험”이라는 표현이 법적·과학적 근거 없이 사용됨 |
| 3단계 (고/중/저) | 빨강/노랑/초록 | 여전히 “위험도”를 전제, 신호등 UX는 공포 조장 소지 |
| 4단계 (근거 기반 분류) | 분류별 중립 색상 | 판단 대신 정보 제공 |
네 번째를 선택했습니다.
핵심 차이는, 이 4단계가 위험도의 높낮이가 아니라 회피 근거의 종류를 나타낸다는 것입니다. “1단계가 가장 위험하고 4단계가 가장 안전하다”가 아닙니다. 각 단계는 서로 다른 종류의 이유를 나타냅니다.
4단계 분류 체계
1단계: 법정 표시 대상
알레르기 유발물질 22종입니다. 식품위생법에 의해 반드시 표시해야 하는 성분입니다.
- 난류, 우유, 밀, 대두, 땅콩, 메밀, 고등어, 게, 새우, 돼지고기, 복숭아, 토마토, 호두, 잣, 쇠고기, 닭고기, 오징어, 조개류, 아황산류 등
- 근거: 식품위생법 시행규칙, 식품 등의 표시·광고에 관한 법률
이 분류는 판단이 아닌 법의 명시입니다. 서비스가 판단할 것이 없습니다. 법에서 표시하라고 했으니 표시합니다.
2단계: 특정군 주의 필요
모든 사람에게 해당하는 것은 아니지만, 특정 건강 상태의 사람에게 중요한 성분입니다.
| 성분 | 주의 대상 | 근거 |
|---|---|---|
| 카페인 | 임산부, 수유부, 어린이 | 식약처 권고 |
| 꿀 | 만 1세 미만 영아 | 영아보툴리눔증 위험 |
| 페닐알라닌 | PKU 환자 | 선천성 대사 이상 |
| 알코올 | 임산부, 어린이, 운전자 | 법적 규제 |
이 분류의 특징은 주의 대상군이 명시되어 있다는 것입니다. “카페인이 위험하다”가 아니라 “카페인은 임산부에게 주의가 필요하다”입니다.
3단계: 인지 기반 회피
과학적으로 유해성이 확정되지 않았지만, 소비자 인식이나 일부 연구 결과에 기반하여 회피하는 성분입니다.
- 합성색소 9종 (적색3호, 적색40호, 황색4호, 황색5호 등)
- MSG (L-글루탐산나트륨)
- 아질산나트륨, 안식향산나트륨
- 수크랄로스, 아세설팜칼륨
- 카라기난, 이산화티타늄
이 분류가 가장 민감합니다. “유해하다”고 쓰면 근거 없는 공포 조장이고, “안전하다”고 쓰면 소비자 선택권을 무시하는 것입니다.
그래서 이 분류의 UI 라벨은 **“소비자 인식 기반”**입니다. 사실을 서술합니다. 판단하지 않습니다.
4단계: 기호/윤리 기반
건강이나 안전과 무관하지만, 개인의 가치관에 따라 회피하는 성분입니다.
- 비건 제외 대상 (젤라틴, 카제인, 코치닐색소 등)
- 할랄 미인증 성분
- 종교적·문화적 회피 대상
이 분류는 법적 근거도, 과학적 유해성도 아닌 개인의 선택입니다. 서비스는 정보만 제공하고 판단하지 않습니다.
분류가 UI에 미치는 영향
4단계 분류는 단순히 데이터 구조가 아니라, 화면 표현을 결정합니다.
색상 규칙
| 분류 | 색상 | 금지 색상 | 이유 |
|---|---|---|---|
| 법정 표시 대상 | 회색 | 빨강 | ”위험” 신호가 아닌 “정보” 신호 |
| 특정군 주의 | 앰버(연노랑) | 진주황 | 경고가 아닌 참고 |
| 인지 기반 회피 | 연파랑 | — | 중립 톤 |
| 기호/윤리 | 연보라 | — | 중립 톤 |
빨강을 쓰지 않습니다. 빨강은 “위험”을 의미합니다. 식약처가 허가한 첨가물에 빨간 표시를 하는 것은 서비스가 그 첨가물을 “위험하다”고 판단하는 것이 됩니다. 이것은 표시광고법 위반 소지가 있고, 과학적으로도 정당하지 않습니다.
표현 규칙
금지: "이 성분은 유해합니다"
금지: "이 성분은 위험할 수 있습니다"
금지: "논란이 있는 성분"
허용: "법정 표시 대상 알레르겐입니다"
허용: "임산부에게 주의가 필요합니다 (출처: 식약처)"
허용: "일부 소비자가 회피하는 성분입니다"
모든 표현에는 출처가 필수입니다. “식약처 권고”, “식품위생법 시행규칙”, “EFSA 의견서” 등 근거를 명시합니다. 출처 없는 주의 문구는 표시하지 않습니다.
근거 데이터의 구조
각 기피성분 규칙에는 다음이 포함됩니다.
| 필드 | 역할 | 예시 |
|---|---|---|
| 분류 단계 | 4단계 중 하나 | LEGAL_ALLERGEN |
| 한 줄 설명 | 성분의 기능 설명 | ”감칠맛을 내는 조미료” |
| 주의 대상군 | 해당되는 사람 | [“임산부”, “수유부”] |
| 출처 기관 | 근거 제공 기관 | [“식품의약품안전처”] |
| 출처 URL | 근거 문서 링크 | [URL] |
| 활성 여부 | 현재 적용 여부 | true/false |
출처 URL이 NOT NULL이라는 점이 중요합니다. 근거 없이 기피성분을 등록할 수 없습니다. 이 제약은 DB 스키마 수준에서 강제됩니다.
결과
| 항목 | 수치 |
|---|---|
| 법정 알레르겐 | 22종 |
| 특정군 주의 성분 | 4종 |
| 인지 기반 회피 성분 | 16종 |
| 기호/윤리 성분 | 확장 가능 (현재 미구현) |
| 총 규칙 수 | 42종 |
한계
4단계 기호/윤리 분류는 아직 구현되지 않았습니다. 비건, 할랄 등 기호 기반 분류는 설계는 되어 있지만, 데이터 구축이 필요합니다. 어떤 성분이 비건에 해당하지 않는지를 판단하려면 원재료의 동물성 여부를 전수 분류해야 합니다.
“인지 기반 회피”의 범위 설정이 주관적입니다. 어떤 성분을 이 목록에 포함하고 어떤 성분을 제외할지에 대한 객관적 기준이 없습니다. 현재는 국내외 소비자 인식 조사와 주요 클린 라벨 기준을 참고했지만, 완전한 객관성을 확보하기는 어렵습니다.
한 줄 교훈
식품 성분의 “위험도”를 서비스가 판단하는 것은 월권입니다. 서비스의 역할은 “이 성분이 왜 주목받는지”의 근거를 보여주는 것이고, 판단은 사용자의 몫입니다.