📚 이 글은 “개발자가 AI 자동화로 부업하는 실전 기록” 시리즈입니다.
- 📌 1편: AI 자동화로 개발자 부업하는 법 — 실패 3번 하고 나서야 알게 된 것들
- 📌 2편: WordPress + Claude API Day 1 세팅 기록
- 📌 3편: Slack 봇으로 블로그 자동 발행 트리거 만들기
- 📌 4편: Threads API 연동으로 블로그 발행과 SNS 자동 배포 연결하기
- 📌 5편: Notion API로 블로그 발행 기록 자동화하기
- 📌 6편: Windows Task Scheduler로 블로그 자동 발행 스케줄러 만들기
- 📌 7편: 블로그 SEO 최적화 실전 — Yoast SEO + 키워드 전략부터 검색 상위 노출까지
- 📌 8편: 블로그 자동화 2주 운영 결과 공개 — 트래픽, 비용, 그리고 내가 배운 것들
- 📌 9편: 쿠팡파트너스 가입부터 자동화까지 — 개발자가 수익화 채널 추가하는 실전기
- 📌 10편: 구글 애드센스 신청 도전기 — 10개 글 채우고 드디어 신청했다
- 📌 11편: 구글 애드센스 신청 후기 — 10개 글 채우고 신청까지 준비한 모든 것
- 📌 12편: 네이버 서치어드바이저 등록 후기 — 구글만으로는 부족하다
- 📌 13편: 블로그 자동화 한 달 총정리 — 지금까지 쌓인 것들과 앞으로의 계획 (현재 글)
- 📌 14편: Threads로 블로그 트래픽 늘리기 — SNS 채널 연동 실전기 (예정)
- 📌 15편: AI 자동화 부업 2개월 솔직 후기 — 현실과 가능성 (예정)
← 12편: 네이버 서치어드바이저 등록 후기 — 구글만으로는 부족하다
한 달이 지났다. 솔직히 처음엔 이 시리즈가 이렇게 길어질 줄 몰랐다. 1편을 쓸 때만 해도 “일단 글 두세 개 써보고 안 되면 접자”는 마음이었으니까. 그런데 어느 날 Search Console을 열어봤더니 클릭이 찍혀 있었고, Notion 대시보드에는 발행 기록이 열두 줄이 넘어 있었다. 뭔가 쌓이고 있구나는 느낌이 처음 들었던 순간이었다.
이번 편은 지금까지 한 모든 것을 한 번에 정리해보는 글이다. 트래픽이 얼마나 됐는지, 비용은 어떻게 됐는지, 어떤 시도가 먹혔고 어떤 건 별로였는지. 중간 중간 들었던 솔직한 감정들도 같이 털어놓을 생각이다.
한 달 동안 만든 것들 — 자동화 스택 전체 목록
처음 세팅부터 지금까지 만든 것들을 정리해보면 생각보다 꽤 많다. 시작은 WordPress + Claude API 연동 하나였는데, 한 달 사이에 연결된 게 이렇게 늘었다.
- ✅ WordPress REST API + JWT 인증 세팅
- ✅ Claude API(claude-sonnet-4-6)로 글 자동 생성 파이프라인
- ✅ Slack 봇(slack-bolt, Socket Mode)으로 발행 트리거 UI
- ✅ Threads API 연동으로 글 발행 시 SNS 자동 배포
- ✅ Notion API 연동으로 발행 기록 자동화 대시보드
- ✅ Windows Task Scheduler로 매일 정해진 시간 자동 발행
- ✅ Yoast SEO 플러그인 + 키워드 전략 세팅
- ✅ 구글 서치 콘솔 + Bing Webmaster Tools 등록
- ✅ 구글 애드센스 신청 완료 (심사 대기 중)
- ✅ 쿠팡파트너스 계정 생성 + 자동화 링크 삽입 연동
- ✅ 네이버 서치어드바이저 등록 + 사이트맵 제출
목록으로 보니 새삼 많긴 하다. 그런데 솔직히 말하면, 이게 하루에 하나씩 차근차근 된 게 아니다. 어떤 날은 API 에러 잡느라 반나절을 날렸고, 어떤 날은 Notion 연동이 갑자기 끊겨서 디버깅만 두 시간 했다. 자동화가 완성된 게 아니라 계속 고쳐지고 있는 것에 더 가깝다는 걸 먼저 말해두고 싶다.
한 달 동안 만든 자동화 스택은 11개. 완성이 아니라 계속 고쳐지는 중이다.
블로그 자동화 결과 — 한 달 트래픽 분석 공개
숫자를 먼저 보자. 8편에서 2주 결과를 공개했을 때는 솔직히 초라했다. 일 방문자 한 자리수, 클릭 수 거의 0에 가까웠다. 그로부터 또 2주가 더 지난 지금은 어떨까.
| 지표 | 2주차 (8편 기준) | 4주차 (현재) | 변화 |
|---|---|---|---|
| 총 발행 글 수 | 7편 | 13편 | +6편 |
| 구글 Search Console 클릭 | 12회 (2주 누적) | 71회 (4주 누적) | 약 6배 |
| 노출 수 (Impressions) | 약 340회 | 약 2,100회 | 약 6.2배 |
| 평균 CTR | 3.5% | 3.4% | 거의 동일 |
| 네이버 유입 | 0 | 3회 (서치어드바이저 등록 후) | 첫 유입 확인 |
| Threads 팔로워 | – | 41명 | 신규 채널 |
절대 수치로 보면 아직 작다. 일 방문자가 평균 5~8명 수준이고, 잘 되는 날도 15명 정도다. 수익이 나는 숫자가 아니다. 그런데 내가 주목하는 건 방향이다. 노출 수가 2주 만에 6배 뛰었고, 글이 쌓일수록 검색 유입이 늘고 있다. 그래프가 우상향이다.
가장 많이 읽힌 글은 1편(AI 자동화로 개발자 부업하는 법)과 7편(SEO 최적화 실전)이었다. 두 편 모두 검색 의도가 명확한 키워드를 앞에 배치한 글들이다. 반면 발행 기록 자동화(5편)나 Task Scheduler(6편) 같은 기술 내부 세팅 편들은 유입이 적었다. 독자가 원하는 건 결과와 판단 기준이지, 세팅 방법 그 자체가 아닐 수도 있다는 걸 수치가 알려줬다.
트래픽은 아직 적지만 방향은 맞다. 글이 쌓일수록 노출이 늘고, 검색 유입이 생기기 시작했다.
한 달 실제 비용 — 고정비용과 변동비용 총정리
부업을 하면서 솔직하게 공개하고 싶은 게 비용이다. “시작 비용 거의 없음”이라고 쓰는 글들이 많은데, 막상 해보면 생각보다 나가는 게 있다.
| 항목 | 비용(월) | 비고 |
|---|---|---|
| Hostinger 비즈니스 플랜 | 약 7,000원 | $4.99/월, 도메인 무료 포함 |
| Claude API (claude-sonnet-4-6) | 약 12,000~18,000원 | 글 수와 토큰 길이에 따라 변동 |
| Slack (무료 플랜) | 0원 | Socket Mode 무료 사용 가능 |
| Notion (무료 플랜) | 0원 | API 무료 범위 내 사용 |
| Threads API | 0원 | 현재 무료 |
| 월 합계 | 약 19,000~25,000원 | 환율에 따라 변동 |
한 달에 2만 원 안팎이다. Claude API 비용이 생각보다 올라갔는데, 글 한 편당 claude-sonnet-4-6 기준으로 대략 900~1,200원 정도 나온다. 매일 하나씩 발행하면 한 달에 13편 기준으로 약 12,000~15,600원. 여기에 호스팅 더하면 한 달 고정 지출이 대략 2만 원 초반이다.
수익은? 아직 없다. 애드센스는 심사 중이고, 쿠팡파트너스도 클릭은 났지만 구매 전환이 없었다. 한 달간 약 2만 원을 쓰고 수익은 0원이다. 이걸 쓰는 게 좀 부끄럽기도 하지만, 정직하게 기록해두는 게 이 블로그의 존재 이유라고 생각한다.
그런데 이 2만 원을 어떻게 보느냐에 따라 달라진다. 콘텐츠 제작 비용이 2만 원이고 그 결과물인 글 13편이 지금도 검색 결과에 노출되고 있다면, 단순한 지출이 아니라 자산을 쌓는 비용이라고 볼 수도 있다. 적어도 나는 그렇게 생각하면서 버티고 있다.
한 달 지출 약 2만 원, 수익 0원. 하지만 글 13편이라는 검색 자산은 남았다.
잘 됐던 것 vs 별로였던 것 — 한 달 솔직 평가
잘 됐던 것부터. 가장 만족스러운 건 자동화 파이프라인 자체다. 지금은 Slack에서 명령어 하나 입력하면 Claude가 글을 쓰고, WordPress에 발행되고, Threads에 올라가고, Notion에 기록이 남는다. 처음 1편 쓸 때 손으로 하나하나 하던 것과 비교하면 정말 다른 세계다. 이 파이프라인 한 번 만들어두니까 “글 써야 하는데”라는 심리적 부담이 많이 줄었다.
SEO 세팅도 생각보다 잘 됐다. Yoast SEO 플러그인이랑 키워드 전략을 적용한 7편 이후 글들이 이전 편들보다 훨씬 빨리 인덱싱됐다. 정확하게는 사이트맵 제출 전후로 확연히 달라졌다.
별로였던 것. 솔직히 말하면 네이버 서치어드바이저 등록은 기대 이하였다. 등록하고 나서 2주가 지났는데 유입이 고작 3회다. 네이버 검색에서 내 글이 뜨긴 하는데 클릭이 잘 안 된다. WordPress 블로그 자체가 네이버 검색 생태계에서 불리하다는 걸 다시 한번 느꼈다. 네이버 최적화는 장기전으로 봐야 할 것 같다.
그리고 Threads 유입. 자동 배포는 잘 되는데 팔로워 41명 수준에서 블로그로 오는 클릭이 거의 없다. 팔로워 수가 더 쌓여야 의미가 생기는 채널인 것 같고, 아직은 투자 단계다.
자동화 파이프라인과 SEO 세팅은 성공적. 네이버 유입과 SNS 트래픽은 기대 이하였다.
현재 자동화 파이프라인 구조 — 코드로 보는 전체 흐름
한 달 동안 코드가 여러 번 바뀌었다. 처음에 각 기능별로 따로 스크립트를 만들었는데, 지금은 하나의 메인 파이프라인으로 합쳐놨다. 구조를 간단히 보여드리면 이렇다.
⚙️ 사전 준비: .env에 ANTHROPIC_API_KEY, WP_URL, WP_JWT_TOKEN, SLACK_BOT_TOKEN, SLACK_APP_TOKEN, NOTION_API_KEY, NOTION_DATABASE_ID가 설정되어 있어야 합니다. JWT 토큰은 /wp-json/jwt-auth/v1/token으로 발급받아 사용합니다.
import os
from anthropic import Anthropic
import requests
from notion_client import Client as NotionClient
from datetime import datetime
from dotenv import load_dotenv
load_dotenv()
claude = Anthropic(api_key=os.environ["ANTHROPIC_API_KEY"])
notion = NotionClient(auth=os.environ["NOTION_API_KEY"])
def generate_post(topic: str, keywords: str) -> dict:
"""Claude로 블로그 글 생성"""
response = claude.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
messages=[{
"role": "user",
"content": f"주제: {topic}\n키워드: {keywords}\n\n위 주제로 SEO에 최적화된 블로그 글을 HTML 형식으로 작성해줘."
}]
)
content = response.content[0].text
# 제목 파싱 (첫 번째 h1 태그 기준)
title = topic # 실제로는 정규식으로 h1 추출
return {"title": title, "content": content}
def publish_to_wordpress(title: str, content: str) -> str:
"""WordPress REST API로 글 발행"""
headers = {
"Authorization": f"Bearer {os.environ['WP_JWT_TOKEN']}",
"Content-Type": "application/json"
}
payload = {
"title": title,
"content": content,
"status": "publish"
}
res = requests.post(
f"{os.environ['WP_URL']}/wp-json/wp/v2/posts",
json=payload,
headers=headers
)
post_url = res.json().get("link", "")
return post_url
def log_to_notion(title: str, url: str, status: str = "발행완료"):
"""Notion 대시보드에 발행 기록 저장"""
notion.pages.create(
parent={"database_id": os.environ["NOTION_DATABASE_ID"]},
properties={
"제목": {"title": [{"text": {"content": title}}]},
"URL": {"url": url},
"상태": {"select": {"name": status}},
"발행일": {"date": {"start": datetime.now().isoformat()}}
}
)
def run_pipeline(topic: str, keywords: str):
"""전체 자동화 파이프라인 실행"""
print(f"[1/3] 글 생성 중: {topic}")
post = generate_post(topic, keywords)
print("[2/3] WordPress 발행 중...")
post_url = publish_to_wordpress(post["title"], post["content"])
print("[3/3] Notion 기록 중...")
log_to_notion(post["title"], post_url)
print(f"완료!