AI로 책 2권을 만들어 상품 42개를 올렸습니다. 매출은 0원입니다.

YONG JAE LEE·2026년 8월 25일
post-thumbnail

172쪽짜리 책 한 권, 149쪽짜리 한 권. 여기에 PDF·엑셀 템플릿 30개.
3개 플랫폼에 합쳐서 42개를 올려놨습니다. 책은 권당 NZ$35입니다.

매출은 0원입니다. 책은 한 권도 안 팔렸고, 템플릿 30개는 조회수조차 0입니다.

만드는 데 실패한 게 아닙니다. 만드는 건 끝났습니다.
파는 데 실패한 것도 아닙니다. 팔 기회 자체가 오지 않았습니다.


2. 왜 만들었나

뉴질랜드 오클랜드에 4년째 살고 있습니다.
부업으로 삼은 전략은 단순했습니다 — 큰 한 방 대신 「아이템당 월 $100」짜리 작은 수익원을
여러 개 쌓는 것.
하나가 죽어도 나머지가 남으니까요.

그래서 고른 게 니치 정보 상품이었습니다.
현지에 살면서 실제로 겪은 생활 실무를 정리한 유료 PDF 가이드요.
검색해 보면 정보가 파편으로 흩어져 있고, 출처가 불분명하고, 몇 년씩 묵어 있었습니다.
「제대로 정리된 게 없다」는 건 만들 이유로 충분해 보였습니다.

지금 와서 보면 그 문장에 빠진 게 있었습니다.
정리된 게 없는 건 맞는데, 그걸 돈 주고 살 사람이 있는지는 확인한 적이 없었습니다.

3. 어떻게 만들었나 — 워드를 안 쓰고 파이썬으로 조립했습니다

원고를 워드나 한글로 쓰지 않았습니다. 마크다운으로 쓰고 파이썬으로 조립했습니다.

이유는 세 가지였습니다.

  1. 원고를 git으로 관리하고 싶었습니다. 어디를 왜 고쳤는지 남아야 했습니다
  2. 같은 원고에서 여러 결과물을 뽑아야 했습니다 — 본편, 무료 미리보기, 외부 링크를 뺀 배포본
  3. 오타 하나 고치자고 172쪽을 다시 손보는 상황을 만들고 싶지 않았습니다

구조는 이렇습니다. 전부 합쳐 3,274줄입니다.

구성줄 수하는 일
mdbook.py349마크다운 → PDF 렌더러 (reportlab). 표·패널·목차·구분선
assemble_*.py427책별 조립. 어떤 원고를 어떤 순서로 넣을지
_cover*.py302표지 생성. 플랫폼별 규격 4종을 한 번에
_build_*.py2,149부록 빌더. 엑셀 시트·체크리스트 PDF
_otf2ttf.py47폰트 변환 (reportlab이 OTF를 안 받습니다)

목차는 문서가 아니라 자료구조입니다. 이게 이 방식의 핵심입니다.

PARTS = [
 ("1부", "결정", "할 것인가", [
    ("books/A/A1-....md", "A1. 이민은 이사가 아니라 교체다"),
    ("books/A/A2-....md", "A2. 뉴질랜드가 당신에게 맞는 나라인가"),
 ]),
 ("2부", "돈", "얼마가 드는가", [
    ("books/A/A4-....md", "A4. 이민의 총비용"),
 ]),
 # ...
]

장을 옮기고 싶으면 리스트 순서를 바꿉니다. 목차도, 쪽 번호도, 부 표지도 알아서 따라옵니다.

그리고 빌드에 실패 조건을 넣었습니다.

집필 중에는 원고에 내부 메모를 심어둡니다. 나중에 확인해야 할 것, 아직 근거를 못 찾은 것.
빌드 스크립트는 판매본을 만들 때 이 마커를 제거하면서 개수를 세서 보고합니다.

본편 PDF (172쪽, 내부 마커 0건)

0건이 아니면 내지 않습니다. 원고에 「나중에 확인」이라고 써둔 게 남아 있는데
판매본이 나가는 상황을 코드로 막은 겁니다.

실제로 값을 했습니다. 미리보기를 만들다 조판 결함 2건을 발견했는데
(장 끝마다 생기는 빈 페이지, 표 안에서 <br/>이 글자로 찍히는 문제),
고치고 명령 한 줄로 다시 뽑아 3개 플랫폼에 그날 재배포했습니다.

4. 진짜 시간을 쓴 곳은 집필이 아니라 검증이었습니다

AI로 초고를 쓸 때 제일 무서운 건 틀린 문장이 아니라 그럴듯한 문장입니다.
명백히 이상하면 눈에 걸립니다. 문제는 매끄럽게 맞는 것처럼 읽히는 쪽입니다.
그리고 제 책은 틀리면 독자가 실제로 돈을 잃는 종류의 정보를 다뤘습니다.

그래서 72개 항목을 공식 출처로 하나씩 확인하고,
확인한 내용과 출처와 확인일을 로그로 남겼습니다. (확인일 2026-08-23)

두 가지가 나왔습니다. 성격이 완전히 다릅니다.

하나는 모델이 「몰랐던」 것입니다.
반려동물 보증금(pet bond) 제도가 2025년 12월 1일부터 시행됐는데,
초고에는 이 내용이 아예 없었습니다. 학습 시점 이후에 생긴 제도니까요.
검증 중에 발견해서 절을 새로 넣었습니다.
이건 모델이 틀린 게 아니라 모르는 것이고, 그래서 검토만으로는 절대 안 잡힙니다.
없는 걸 없다고 알아차리려면 원문을 직접 봐야 합니다.

다른 하나는 모델이 「틀린」 것입니다.
운전면허 전환을 두고 "한국은 면제국이라 시험 없이 바뀐다"고 쓸 뻔했습니다.
맞는 말처럼 들리고, 대체로 맞습니다. 그런데 실제로는
면허 보유 기간이 2년 미만이면 실기 시험을 봐야 합니다.
갓 면허를 딴 가족이 있으면 바로 걸리는 예외입니다.
이건 너무 그럴듯해서, 검증하지 않았으면 그대로 나갔을 겁니다.

그래서 이 책에 대해 제가 할 수 있는 말은 「AI가 썼다」가 아닙니다.
「AI로 쓰고, 사람이 72개 항목을 출처로 확인했다」 입니다.
이 차이가 없으면 니치 정보 상품은 팔 자격이 없다고 생각합니다.

5. 그리고 아무 일도 일어나지 않았습니다

진열은 깔끔하게 끝냈습니다.
3개 플랫폼에 본편과 무료 미끼를 올리고, 무료 다운로드에서 본편으로 가는 통로도 연결하고,
할인 쿠폰도 걸고, 표지도 플랫폼 규격에 맞춰 다 만들었습니다.

그리고 아무 일도 일어나지 않았습니다.

가격 문제가 아닙니다. 방문이 없으면 가격은 변수가 되지도 못합니다.
할인을 아무리 걸어도 할인 페이지를 본 사람이 없으면 그냥 없는 일입니다.

돌아보면 유입 계획이 딱 하나였습니다. 글 연재 플랫폼에 작가 신청을 하고,
승인되면 연재를 시작해서 거기서 사람을 데려온다. 원고 3편까지 미리 써뒀습니다.

8월 25일, 불합격했습니다.

계획이 하나였으니 그게 막히자 남은 게 없었습니다.
그동안 심사 없는 채널에는 한 글자도 안 올렸습니다. 승인을 기다리고 있었으니까요.

6. 순서가 틀렸습니다

만든다 → 진열한다 → 그제서야 사람을 어떻게 데려올지 고민한다.

이 순서의 진짜 문제는 실패한다는 게 아닙니다.
만드는 내내 아무 신호도 주지 않는다는 겁니다.

172쪽을 쓰는 동안 저는 계속 잘하고 있다고 느꼈습니다.
진도가 나갔고, [확인 필요] 마커가 줄었고, PDF 쪽수가 늘었습니다.
전부 측정 가능한 진전이었습니다.

그런데 그 숫자들 중에 「이걸 원하는 사람이 있는가」를 알려주는 숫자는 하나도 없었습니다.
진척을 재는 계기판은 잔뜩 달아놓고, 수요를 재는 계기판은 하나도 안 달아둔 채로
끝까지 달린 겁니다.

시장을 처음 만난 건 다 만들고 난 다음이었습니다. 그리고 그때는 되돌릴 것이 없었습니다.

거꾸로 했어야 합니다.
글 한 편을 먼저 쓰고, 그게 읽히는지 보고, 그 다음에 만들었어야 합니다.
글 한 편은 일주일이면 답이 나옵니다.
책은 다 쓸 때까지 답이 안 나옵니다. 그리고 다 쓰고 나면 이미 늦습니다.

7. 그래서 이 글이 그 실험입니다

다음 글에서는 파이프라인을 실제로 뜯어보려고 합니다.
특히 reportlab으로 한글 PDF를 만들 때 특정 글자가 소리 없이 사라지는 문제를요.
폰트에 글리프가 없어서 생기는 일인데, 네모가 뜨는 것도 아니고 그냥 없어집니다.
렌더링 전에 커버리지를 검사해서 잡는 방법이 있고, PDF에 박힌 폰트를 뜯어보면
왜 네모조차 안 나오는지도 알 수 있습니다.
마오리어 매크론(ā) 하나 때문에 이 함정을 정면으로 밟았습니다.

그리고 하나 더.

이 글 자체가 아까 말한 그 실험입니다.

만들기 전에 유입을 먼저 확인했어야 한다고 썼는데, 그러면 지금 할 일은
또 뭔가를 만드는 게 아니라 글을 먼저 내보고 읽히는지 보는 것입니다.

그래서 판정 기준을 먼저 정해두고 시작했습니다. 7일 뒤에 봅니다.
반응이 기준 아래면 제목을 바꿔 한 번 더 시도하고, 그래도 안 되면 이 방향은 접습니다.
이번엔 승인을 기다리다 시간을 흘려보내지 않으려고, 접는 조건부터 적어놨습니다.

읽어주셔서 감사합니다.

profile
전방위아티스트

0개의 댓글