Markdown 표 생성기
Markdown 표를 격자에서 만들거나 Excel, Google 스프레드시트, CSV, JSON, HTML을 붙여 넣어 변환합니다. 파이프와 줄바꿈을 이스케이프하고 한글도 열이 맞습니다.
- 브라우저에서 처리
- 데이터가 브라우저 밖으로 나가지 않습니다
- 무료 · 회원가입 불필요
WeChat으로 스캔하여 공유
예시·자세한 설명·자주 묻는 질문 실제 출력이 있는 예시, 다른 도구와의 차이, 자주 묻는 질문.
예시: 업무 현황표를 스프레드시트에서 복사
한 셀에 두 줄짜리 상태가 들어 있는 업무 표를 복사해 첫 헤더 셀에 붙여 넣으면 다음과 같습니다.
| 항목 | 담당 | 상태 |
| -------------- | ------ | ------------------- |
| 로그인 개선 | 김민준 | 진행 중 |
| 결제 오류 수정 | 이서연 | 완료<br>(배포 대기) |
셀 안의 줄바꿈은 <br>로 바뀝니다. 실제 줄바꿈은 행을 끝내기 때문입니다(GFM 사양 4.10절). 한글 한 글자를 2칸으로 세어 공백을 채우므로, 한글 고정폭 글꼴에서는 세로선이 한 줄로 맞습니다.
예시: 셸 명령이 들어간 표 정리하기
「데이터 가져오기 → Markdown 표」는 GitHub과 같은 방식으로 표를 읽고 열을 맞춰 다시 씁니다. 코드 안의 이스케이프된 파이프도 그대로 유지됩니다.
|명령|설명|
|-|-|
|`git log --oneline \| head`|최근 커밋 목록|
| 명령 | 설명 |
| --------------------------- | -------------- |
| `git log --oneline \| head` | 최근 커밋 목록 |
GFM에서는 코드 안이라도 |를 \|로 써야 합니다. 백슬래시 없이 `a|b`라고 쓰면 GitHub, Qiita, Zenn, micromark 모두 그 자리에서 셀을 끊습니다(이 도구의 테스트에 각 렌더러의 출력을 기록해 두었습니다).
일반 텍스트 모드
셀은 기본적으로 Markdown으로 처리되어 **굵게**, `코드`, 링크를 쓸 수 있습니다. 스프레드시트 데이터의 *나 _가 서식으로 바뀌면 안 될 때는 「셀 내용」을 일반 텍스트로 바꿉니다. 5*3*2는 5\*3\*2, 맨 앞의 _id는 \_id가 되고, 단어 안의 user_id는 강조가 될 수 없으므로 그대로 둡니다. Markdown 모드에서는 출력 아래에 렌더링 결과가 입력과 다른 셀 수를 알려 줍니다.
렌더러별 차이
2026-10-02에 이 도구의 출력을 GitHub과 Gitee의 Markdown API, Qiita 렌더러(qiita_marker 0.23.9.0), Zenn 렌더러(zenn-markdown-html 0.5.4), micromark로 그려 셀 텍스트를 비교했습니다.
\|로 쓴 파이프는 모두 셀 안의|입니다.<br>은 모두 줄바꿈입니다(micromark는 HTML을 허용할 때).x\\|y는 GitHub·Gitee·Qiita·Zenn에서 셀 하나, micromark에서 셀 두 개입니다. 도구는 이 형태를 출력하지 않고\\\|로 씁니다.- 헤더보다 셀이 많은 행의 남는 셀은 모두 표시되지 않습니다. 가져올 때 도구는 그 셀을 추가 열로 남기고 알려 줍니다.
한글 열이 맞는 원리
「열 맞춤」은 각 셀을 열에서 가장 넓은 셀의 표시 폭까지 공백으로 채웁니다. 한글 음절·한자·가나·전각 문자·이모지는 2칸, 결합 문자는 0칸이며 기준은 Unicode UAX #11과 EastAsianWidth 18.0.0 데이터입니다. 계산 방식은 markdownlint MD060이 쓰는 string-width 8.1.0과 같고, 테스트에서 무작위 표 200개의 두 배치에 MD055·MD056·MD058·MD060을 적용합니다. ○ × ① → 같은 문자는 UAX #11에서 폭이 모호한 문자(동아시아 옛 문자 집합에서는 전각)라서, 편집기에서 2칸으로 보이면 해당 옵션을 켜세요.
다른 도구와 비교
2026-10-02에 같은 데이터(왼쪽 위 빈 셀, 두 줄 셀, a|b, 5*3*2, 東京)로 시험했습니다.
- markdowntoword.org(Bing 「markdown 표 생성기」 1위)는 빈 셀 위치를 지키고
|,*,_를 모두 이스케이프하지만, 공백으로 열을 맞추지 않고 모든 열을:---(왼쪽 정렬)로 씁니다. - tableconvert.com(Excel에서 변환)은 왼쪽 위 빈 셀을 버려 헤더가 한 열 밀리고,
a|b도 그대로 둡니다. - tablesgenerator.com의 「Paste table data」는 붙여 넣은 텍스트를 폼으로 자사 서버에 POST하고, 두 줄 셀을 두 개의 행으로 나눕니다.
제한
- 병합 셀은 만들 수 없습니다. GFM에는 colspan / rowspan이 없어서 HTML의 병합 셀은 나누고 첫 셀에 텍스트를 넣습니다.
- 셀에는 인라인 Markdown만 쓸 수 있습니다. 목록, 인용, 코드 블록은 들어가지 않습니다.
- 셀 앞뒤 공백은 GFM이 지우고, 탭은 공백으로 씁니다.
- 격자에는 처음 1,000행만 보이고, Markdown 출력에는 모든 행이 들어갑니다.
- 가져오기는 텍스트의 첫 Markdown 표, HTML의 첫
<table>만 읽습니다. - 가져올 텍스트를 읽을 수 없으면 아무것도 가져오지 않고, 읽을 수 있을 때까지 출력은 비어 있습니다. 문법 오류가 있는 JSON은 행과 열을 알려 줍니다(「자동 감지」에서도 텍스트가 JSON 값처럼 시작하면 같으며,
[{"a":1},은 「1행 10열」). 구분 행의 셀 수가 헤더 행과 다른 Markdown 표는 그 행을 알려 줍니다. 따옴표로 시작해 닫히지 않은 CSV 필드는 그대로 가져오고 그 행을 알려 줍니다. - 「파일 열기」와 끌어다 놓기는 10MB 이하의 CSV, TSV, JSON, Markdown, HTML 파일 하나를 UTF-8로 읽습니다. 다른 인코딩의 파일은 열지 않습니다. Excel이 EUC-KR로 저장한, 첫 행이
name,city인 CSV는 「10번째 바이트(0부터 셈)가 올바른 UTF-8이 아니어서」라고 알려 줍니다. Excel에서 「CSV UTF-8」로 다시 저장한 뒤 여세요.
CSV를 한 방향으로만 바꿀 때는 CSV → Markdown 표, 페이지 전체는 HTML → Markdown 변환기, 문서 안에서 표가 어떻게 보이는지는 Markdown 미리보기에서 확인할 수 있습니다.
FAQ
Markdown 표 셀 안에서 줄을 바꾸려면?
GFM 표는 한 행을 한 줄에 써야 해서, 셀 안에 실제 줄바꿈이 있으면 그 행이 끊깁니다. 셀에서 Shift+Enter를 누르면 그 자리에 <br>이 들어가고, GitHub·Gitee·Qiita·Zenn에서 줄바꿈으로 보입니다. HTML을 걸러 내는 렌더러라면 「줄바꿈」을 공백으로 바꾸세요.
셀 안의 | 때문에 표가 깨지는 이유는?
이스케이프하지 않은 |는 `코드` 안에서도 새 셀을 시작합니다. 도구는 셀 안의 |를 \|로 씁니다. 백슬래시 바로 뒤의 파이프는 \\\|로 씁니다. \\|는 GitHub에서는 셀 하나, micromark(remark, MDX, Astro)에서는 셀 두 개로 나뉘기 때문입니다.
Excel이나 Google 스프레드시트에서 복사한 셀을 바로 붙여 넣을 수 있나요?
네. 아무 셀에나 붙여 넣으면 됩니다. 클립보드에 HTML 표가 있으면 그것을 읽고(병합 셀은 나누고 셀 안 줄바꿈은 유지), 없으면 탭으로 구분된 텍스트로 읽습니다. 왼쪽 위 빈 셀 같은 빈칸도 제자리에 남습니다.
편집기에서 열이 맞지 않는 이유는?
도구는 표시 폭으로 공백을 채웁니다. 한글·한자·전각 기호·이모지는 2칸입니다(Unicode UAX #11). 한글 글자가 영문의 정확히 두 배 폭인 글꼴(터미널, 한글 고정폭 글꼴)에서만 열이 맞고, 비례 글꼴에서는 맞지 않습니다.
표 내용이 서버로 전송되나요?
아니요. 편집, 가져오기, 미리보기 모두 브라우저에서 처리합니다. 이 페이지가 기기에 저장하는 것은 출력 옵션(배치, 셀 내용, 줄바꿈, 모호한 폭, Markdown / 미리보기 화면)뿐이고 표 내용은 저장하지 않습니다.