표 데이터 53% 싸게 넣는 법 — 숫자·날짜 표기 실측
앞선 측정에서 숫자와 날짜가 글자당 토큰이 비싼 편이라는 결과가 나왔습니다(0.73토큰/자, 일반 문장은 0.47). 그래서 더 파고들었습니다. 같은 숫자와 날짜라도 어떻게 적느냐에 따라 토큰이 3배까지 달라집니다.
정정 (2026년 10월 14일)
이 글을 처음 쓸 때 위 문장을 “숫자와 날짜가 글자당 토큰이 가장 비싸다”라고 적었습니다. 그 뒤 표본 30개로 문자 종류별 소모율을 다시 재보니 숫자 0.683 / 이모지 0.948로, 가장 비싼 것은 숫자가 아니라 이모지였습니다. ‘가장’이라는 표현을 빼고 고쳤습니다. 종류별 수치 전체는 글자 수로 토큰을 맞출 수 있을까 — 추정식 3종 검증과 계산기 공개에 있습니다.
매출표나 로그를 AI에 넣는 분들에게는 바로 돈이 되는 이야기입니다. 100행짜리 표에서 표기만 바꿔 53%를 절감한 측정 결과를 정리했습니다.
결론부터 — 100행 매출표
날짜와 금액이 들어간 100행 데이터를 네 가지 표기로 만들어 측정했습니다.
| 표기 방식 | 토큰 | 최소 대비 |
|---|---|---|
한글 날짜 + 쉼표 금액2026년 9월 21일,1,250,000원 | 1,683 | 213% |
ISO 날짜 + 쉼표 금액2026-09-21,1,250,000 | 1,283 | 162% |
ISO 날짜 + 숫자만2026-09-21,1250000 | 1,091 | 138% |
압축 날짜 + 숫자만20260921,1250000 | 791 | 100% |
같은 데이터인데 892토큰(53%) 차이가 납니다. 내용은 전혀 손대지 않았습니다.
숫자 — 쉼표가 비싸다
천 단위 쉼표는 읽기 편하라고 넣는 것인데, 토큰 관점에서는 손해입니다.
| 표기 | 토큰 | 쪼개진 모양 |
|---|---|---|
1234567 | 3 | ‘123’ / ‘456’ / ‘7’ |
1,234,567 | 5 | ‘1’ / ‘,’ / ‘234’ / ‘,’ / ‘567’ |
쉼표 자체가 토큰을 먹을 뿐 아니라, 숫자 덩어리를 쪼개서 토크나이저가 효율적으로 묶지 못하게 만듭니다.
자릿수가 커질수록 격차가 벌어진다
| 자릿수 | 쉼표 없음 | 쉼표 있음 | 차이 |
|---|---|---|---|
| 3자리 (100) | 1 | 1 | — |
| 6자리 (100,000) | 2 | 3 | +50% |
| 9자리 (100,000,000) | 3 | 5 | +67% |
| 12자리 (100,000,000,000) | 4 | 7 | +75% |
금액이 큰 재무 데이터일수록 손해가 커집니다.
한글 단위는 피하세요
| 표기 | 토큰 |
|---|---|
1234567 | 3 |
123.5만 | 4 |
1,234,567 | 5 |
백이십삼만 사천오백육십칠 | 12 |
한글로 풀어 쓴 숫자는 4배입니다. 다만 125만원 같은 축약은 오히려 효율적입니다(2토큰). 정밀도가 필요 없다면 축약이 가장 쌉니다.
날짜 — 구분자를 뺄수록 싸다
| 표기 | 토큰 | 100행이면 |
|---|---|---|
20260921 (압축) | 3 | 300 |
2026-09-21 (ISO) | 6 | 600 |
2026/09/21 | 6 | 600 |
2026.09.21 | 6 | 600 |
Sep 21, 2026 | 7 | 700 |
26년 9월 21일 | 8 | 800 |
2026년 9월 21일 | 9 | 900 |
구분자(-, /, .)는 종류에 상관없이 똑같이 비쌉니다. 한글 날짜가 압축 표기의 3배입니다.
날짜 + 시각
| 표기 | 토큰 |
|---|---|
1790000000 (타임스탬프) | 4 |
2026-09-21 14:30 | 10 |
2026-09-21T14:30:00 | 12 |
2026년 9월 21일 오후 2시 30분 | 16 |
타임스탬프가 압도적으로 쌉니다. 다만 사람이 읽을 수 없다는 점은 감안해야 합니다.
중요한 단서 — 이건 비용만 잰 것입니다
여기까지 읽고 “그럼 전부 압축 표기로 바꾸자”고 결론 내리면 위험합니다. 저희가 측정한 것은 토큰 수이지 AI가 얼마나 정확히 이해하는지가 아닙니다.
20260921은 사람도 AI도 2026년 9월 21일인지 다른 형식인지 헷갈릴 수 있습니다.- 타임스탬프는 AI가 사람이 읽을 날짜로 변환하는 과정에서 실수할 여지가 있습니다.
- 쉼표 없는 큰 숫자는 자릿수를 잘못 읽을 가능성이 있습니다.
권장: 압축 표기를 쓰되 맨 앞에 형식을 한 번만 밝히세요. “날짜는 YYYYMMDD, 금액은 원 단위 정수”라는 한 줄이면 모호함이 사라집니다. 한 줄 비용(약 15토큰)으로 수백 토큰을 아끼면서 정확도도 지킬 수 있습니다.
실전 권장안
| 상황 | 권장 표기 | 이유 |
|---|---|---|
| 대량 데이터를 분석시킬 때 | 20260921,1250000 + 형식 설명 1줄 | 가장 저렴하고 모호함도 해결 |
| 결과를 사람이 바로 읽어야 할 때 | 2026-09-21 + 쉼표 금액 | 가독성 우선, 비용은 감수 |
| 대략적 규모만 필요할 때 | 125만원 | 가장 저렴 (2토큰) |
| 로그·시계열 데이터 | 타임스탬프 | 압도적으로 저렴 |
엑셀에서 바로 적용하는 법
날짜 셀 서식 -> 사용자 지정 -> yyyymmdd
금액 셀 서식 -> 숫자 -> 1000 단위 구분 기호 해제
그다음 CSV로 저장해 붙여 넣기
(표 데이터는 CSV가 JSON보다 최대 2배 저렴합니다)프롬프트 맨 앞에는 이렇게 한 줄만 붙이면 됩니다.
아래 데이터에서 날짜는 YYYYMMDD 형식이고 금액은 원 단위 정수입니다.
20260921,1250000
20260922,980000
...재현 코드
import tiktoken
enc = tiktoken.get_encoding("o200k_base")
n = lambda t: len(enc.encode(t))
print(n("1234567"), n("1,234,567")) # 3 5
print(n("20260921"), n("2026년 9월 21일")) # 3 9
print(n("125만원"), n("1,250,000원")) # 2 6
# 어떻게 쪼개지는지
ids = enc.encode("1,234,567")
print([enc.decode([i]) for i in ids])
# ['1', ',', '234', ',', '567']한계: OpenAI 계열 토크나이저 기준이며, 다른 회사 모델은 숫자 처리 방식이 달라 수치가 다릅니다. 또한 앞서 밝혔듯 이해 정확도는 측정하지 않았습니다. 중요한 데이터라면 형식을 명시하고 결과를 검증하세요.
정리
- 100행 표에서 표기만 바꿔 53% 절감이 가능합니다.
- 천 단위 쉼표는 손해입니다. 12자리 숫자에서 75% 더 듭니다.
- 날짜는
20260921(3토큰) <2026-09-21(6) <2026년 9월 21일(9). - 한글로 풀어 쓴 숫자는 4배. 다만
125만원같은 축약은 오히려 최저(2토큰). - 압축 표기를 쓸 때는 형식을 한 줄로 밝히세요. 비용과 정확도를 모두 지킵니다.
측정일: 2026년 9월 21일 / tiktoken 0.14.0 / 인코딩 o200k_base