100 크레딧 무료, 카드 등록 없이지금 시작하기
Logo
Back to blog

두 배 빨라진 구글 트렌드 API — 한국 로케이션 실측

·22 min read

구글 트렌드 API가 프로덕션 22건 기준 약 9초에서 약 4.6초로 줄었어요. 한국 로케이션 아이폰 53주·블랙핑크/뉴진스 비교·급상승 25행 라이브 JSON과 관심도 없음 0크레딧 404를 스키마 그대로 보여 드려요. 이번 세션 캐시 미스 과금 3건은 평균 6,203ms예요.

두 배 빨라진 구글 트렌드 API — 한국 로케이션 실측

구글 트렌드 API로 관심도 추이와 연관 검색어를 치면, 변경 후 프로덕션 과금 22건 기준 전형 호출이 약 9초에서 약 4.6초로 줄었어요. 같은 22건의 최악은 약 12초고, 예전 p95 약 47초와는 자리가 달라요. 30일 동안 19,459건 중 273건이 약 48초 만에 타임아웃되던 경로는 이제 드물어요.

차가운 비영어·비미국 키워드에서 개선이 가장 컸어요. 아래 호출은 한국어 키워드에 location=South Korea를 붙인 2026-09-08 UTC 라이브 응답이에요. 파라미터와 응답 형태, 호출당 5크레딧, 무료 400/404는 그대로예요.

GET https://www.socialcrawl.dev/v1/google_trends/explore · /rising, 헤더 x-api-key: $SOCIALCRAWL_API_KEY예요.

숫자 없는 스톱워치 다이얼과 점토빛 앰버 바늘 하나. 구글 트렌드 API 호출이 걸리는 시간.

한국에서 구글 트렌드 검색을 API로 치면 몇 초인가요?

관심도 추이는 GET /v1/google_trends/explore, 연관·급상승은 GET /v1/google_trends/rising이에요. 둘 다 advanced 5크레딧이고, 인증은 x-api-key예요. 웹에서 검색 트렌드를 보는 화면과 같은 0–100 상대 지수예요. 공식 Google 트렌드 API 알파의 「요청 간 일관 스케일」과는 달라요.

속도 숫자는 표가 두 개예요. 첫 표는 2026-09-07 업그레이드 이후 프로덕션 과금 22건이에요. 「두 배」와 전형 4.6초가 여기 있어요.

항목이전이후
전형 호출 (과금 22건)약 9초약 4.6초
느린 꼬리p95 약 47초그 22건 최악 약 12초
타임아웃30일 19,459건 중 273건, 각 약 48초이제 드묾

같은 날 한국 키워드로 다시 친 캐시 미스 과금 3건은 이 22건을 대체하지 않아요. 「이번에도 4.6초」가 아니에요.

이번 실행 (2026-09-08 UTC, cached: false)레이턴시
explore 아이폰, location=KR5,198ms
rising 아이폰, location=South Korea6,490ms
explore 블랙핑크,뉴진스, location=South Korea6,921ms

평균 (5,198 + 6,490 + 6,921) / 3 = 6,203ms. n=3이에요. 클라이언트 Stopwatch라서 TLS·대기·본문 수신이 들어 있어요. 서버 latency_ms 필드는 응답에 없어요. 이번 한국어 과금 호출은 전부 X-Cache: MISS예요. 캐시 히트(0크레딧·밀리초)를 빨라진 증거로 쓰지 않아요.

한국 로케이션 단건부터 볼게요. keywords=아이폰 &location=South Korea &timeframe=past_12_months. 200, 5크레딧, cached: false, request_id: req-LxLZy40VxO1fhujD예요. 시리즈는 53주, 평균은 48이에요. 앞 포인트 2025-09-07은 value 100이고, 마지막 2026-09-06은 value 43에 partial: true예요.

이 호출은 레이턴시가 파일에 안 남았어요. Stopwatch가 없어서 옆에 5,198ms를 붙이지 않아요. 5,198ms는 아래 location=KR 호출이에요.

bash
curl -sS \
  "https://www.socialcrawl.dev/v1/google_trends/explore?keywords=아이폰&location=South%20Korea&timeframe=past_12_months" \
  -H "x-api-key: $SOCIALCRAWL_API_KEY"
json
{
  "success": true,
  "platform": "google_trends",
  "endpoint": "/v1/google_trends/explore",
  "data": {
    "series": [{
      "keyword": "아이폰",
      "points": [
        { "date": "2025-09-07", "datetime": "2025-09-07T00:00:00.000Z", "value": 100, "partial": false },
        { "date": "2025-09-14", "datetime": "2025-09-14T00:00:00.000Z", "value": 94, "partial": false },
        { "date": "2026-08-30", "datetime": "2026-08-30T00:00:00.000Z", "value": 41, "partial": false },
        { "date": "2026-09-06", "datetime": "2026-09-06T00:00:00.000Z", "value": 43, "partial": true }
      ]
    }],
    "averages": [{ "keyword": "아이폰", "value": 48 }]
  },
  "credits_used": 5,
  "cached": false,
  "request_id": "req-LxLZy40VxO1fhujD"
}

중간 49포인트는 생략했어요. 스키마 키는 그대로예요. 마지막 버킷의 partial: true는 아직 쌓이는 중이에요. 관심도가 떨어졌다고 읽지 마세요.

location=KR로 같은 아이폰·past_12_months를 치면 같은 53주 달력(2025-09-07–2026-09-06)이 붙어요. 평균은 49, 마지막 partial은 46, 레이턴시는 5,198ms예요. 53포인트 중 40개가 달랐고, 절대 차는 최대 5예요. 두 표기 모두 한국으로 붙어요. 바이트 단위로 같은 시리즈는 아니에요.

크림색 아이소메트릭 선 그래프 슬래브 위에 점토빛 앰버 곡선 하나. 구글 트렌드 API가 돌려주는 관심도 추이.

구글 트렌드 분석 숫자(0–100)는 어떻게 읽나요?

0–100은 검색 횟수가 아니에요. Google 공식 FAQ가 말하는 상대 지수예요. 각 점을 그 지역·기간의 총 검색량으로 나눈 뒤, 주제 비율을 0–100으로 맞춰요. 검색량이 적은 구글 트렌드 키워드는 0으로 보일 수 있고, 일회성 급증을 실제 검색의 증거로 읽지 말라고 적혀 있어요. (Trends 데이터 이해)

여러 키워드를 한 호출에 넣으면 그 세트 안에서 정규화돼요. 블랙핑크와 뉴진스를 같이 치면 숫자가 서로에게 맞춰져요.

keywords=블랙핑크,뉴진스 &location=South Korea &timeframe=past_12_months. 200, 5크레딧, 6,921ms, request_id: req-KGpwV9l1ND4TSVEu예요. 두 시리즈 모두 53주예요. 평균은 블랙핑크 6, 뉴진스 18이에요. 뉴진스가 2025-11-09에 세트 천장 100을 찍은 주, 블랙핑크는 6이었어요. 블랙핑크의 세트 안 최댓값은 15(2026-02-22)예요.

json
{
  "success": true,
  "endpoint": "/v1/google_trends/explore",
  "data": {
    "averages": [
      { "keyword": "블랙핑크", "value": 6 },
      { "keyword": "뉴진스", "value": 18 }
    ]
  },
  "credits_used": 5,
  "cached": false,
  "request_id": "req-KGpwV9l1ND4TSVEu"
}

53주 시리즈는 생략했어요. averages가 스키마 키예요. 천장 주 숫자는 위 산문이고, 응답에 peak_weeklatency_ms 필드는 없어요. 6,921ms는 클라이언트 Stopwatch예요.

읽을 규칙은 세 줄이면 돼요.

  1. 0–100은 그 호출 세트 안의 상대 점수예요. 절대 검색량이 아니에요.
  2. 여러 키워드는 세트 안에서 정규화돼요. 블랙핑크 6이 「검색이 없다」는 뜻이 아니에요. 같은 주 뉴진스가 100이면, 블랙핑크는 그 천장에 맞춰 낮아 보일 뿐이에요.
  3. 마지막 버킷 partial: true는 아직 쌓이는 중이에요. 관심도 하락이 아니에요.

SocialCrawl value는 트렌드 UI와 같은 0–100이에요. 공식 알파가 말하는 「요청 간에 다시 0–100으로 맞추지 않는 일관 스케일」과는 달라요. (Search Central 블로그, 2025-07-24) 어느 쪽이 틀린 게 아니라, 조인해서 쓰는 숫자와 화면에서 보는 숫자가 다른 거예요.

난수 키워드를 explore에 넣으면 404가 아닐 수 있어요. 이번 실행에서 zzqqxjw explore는 200 / 5크레딧이었어요. 관심도 없음 증명은 아래 rising 쪽이에요.

구글 트렌드 순위와 급상승은 같은 호출인가요?

같은 호출이에요. GET /v1/google_trends/rising?keyword= — 키워드는 하나예요. 콤마로 여러 개를 넣으면 과금 전 무료 400이에요.

응답은 risingtop 두 배열이에요. top이 관련 상위(0–100 value), rising이 급상승(growth 퍼센트)이에요. 순위 표와 급상승 표가 한 번에 와요.

keyword=아이폰 &location=South Korea &timeframe=past_12_months. 200, 5크레딧, 6,490ms. rising 25행, top 25행이에요. request_id: req-FUinmJXLFrPdMN6B예요.

앞 두 rising 행은 growth: null이에요. 0이 아니에요. 응답 _warnings가 그 사실을 영어로 명시해요. 0으로 채우지 마세요.

json
{
  "success": true,
  "endpoint": "/v1/google_trends/rising",
  "data": {
    "rising": [
      { "query": "아이폰 17 세이지", "growth": null },
      { "query": "아이폰 소리 조절 안됨", "growth": null },
      { "query": "타임 라인 비주얼 라이저 아이폰", "growth": 4950 },
      { "query": "아이폰 17e", "growth": 3600 },
      { "query": "아이폰 18 디자인", "growth": 3500 }
    ],
    "top": [
      { "query": "아이폰 17", "value": 100 },
      { "query": "아이폰 프로", "value": 77 },
      { "query": "아이폰 디시", "value": 39 },
      { "query": "아이폰 17 프로", "value": 34 },
      { "query": "아이폰 16", "value": 33 }
    ],
    "_warnings": [
      "rising.\"아이폰 17 세이지\": growth missing (returned null, not 0)",
      "rising.\"아이폰 소리 조절 안됨\": growth missing (returned null, not 0)"
    ]
  },
  "credits_used": 5,
  "cached": false,
  "request_id": "req-FUinmJXLFrPdMN6B"
}

growth: 4950은 +4950% 급상승이지 검색량 절대치가 아니에요. 아이폰 17e는 3600, 아이폰 18 디자인은 3500이에요. top의 아이폰 17 value 100은 이 관련 상위 목록의 천장이에요.

연관 검색어는 어느 엔드포인트로 받나요?

경로는 GET /v1/google_trends/rising이에요. 쿼리 키 이름은 keyword(단수)예요. explore의 keywords(복수, 1–5)와 달라요.

볼륨이 너무 작아 연관 목록을 못 만들면 0크레딧 404예요. 메시지가 로케이션·기간을 받았다고 한 뒤, 그 조합의 검색량이 부족하다고 말해요. 로케이션 문제가 아니라 키워드 문제예요.

이번 실행에서 rising keyword=zzqqxjw &location=South Korea &timeframe=past_12_months로 그 404를 재현했어요. 404, 0크레딧. type: RESOURCE_NOT_FOUND. request_id: req-VwGvoS6oz118ojno. 이 호출은 19,885ms가 걸렸지만 0크레딧이라 과금 속도 숫자가 아니에요.

json
{
  "success": false,
  "error": {
    "type": "RESOURCE_NOT_FOUND",
    "message": "No related or rising queries were returned for this keyword. The location and timeframe were accepted; Google Trends simply holds too little search volume for this keyword in that combination to build a result. Try a wider `timeframe`, a broader keyword, or the keyword in the local language of the location you requested. You were not charged for this request.",
    "status": 404,
    "doc_url": "https://www.socialcrawl.dev/docs/errors#resource-not-found"
  },
  "credits_used": 0,
  "request_id": "req-VwGvoS6oz118ojno"
}

같은 난수 zzqqxjwexplore는 200 / 5크레딧이었어요. explore 난수 키워드를 관심도 없음 404의 증거로 쓰지 마세요.

해석할 수 없는 로케이션은 과금 전 무료 400이에요. location=Atlantis에 아이폰을 붙이면 400, 0크레딧, 606ms. type: INVALID_REQUEST. 메시지에 되는 표기로 KR, South Korea, 숫자 코드 2410이 들어 있어요. 606ms는 검증 실패지 과금 속도가 아니에요.

json
{
  "success": false,
  "error": {
    "type": "INVALID_REQUEST",
    "message": "Google Trends did not recognise one of the request parameters. `location` must be an ISO country code (\"KR\", \"US\"), the full country name as Google Trends spells it (\"South Korea\", \"United States\"), or a numeric location code (\"2410\"). Google Trends does not publish every country, so a location it has no data for is refused here as well. `category` must be a numeric Google Trends category code. Your credits have been refunded.",
    "status": 400,
    "doc_url": "https://www.socialcrawl.dev/docs/errors#invalid-request"
  },
  "credits_used": 0,
  "request_id": "req-7pFMuu39GLqsE39p"
}

한국 표기는 South Korea, KR, Korea, KOR, republic of korea, korea, republic of가 붙어요. 지난주에 되던 표기는 그대로예요.

에러 코드와 환불 규칙은 에러 문서에 모여 있어요.

구글 트렌드 API 사용법은 한 줄이면 되나요?

거의 한 줄이에요. 구글 트렌드 사용법·구글 트렌드 보는 법이 웹 UI 튜토리얼이라면, 여기 호출은 같은 관심도를 REST로 읽는 최소 호출이에요.

  1. 가입해서 API 키를 받아요. 무료 크레딧이 붙어요.
  2. 아래 URL을 x-api-key와 같이 쳐요. 클라이언트 타임아웃은 60초 이상으로 두세요.
  3. 이어서 보려면 비주얼 익스플로러, 구글 트렌드 플랫폼 허브, 엔드포인트 가격이에요.
bash
curl -sS \
  "https://www.socialcrawl.dev/v1/google_trends/explore?keywords=아이폰&location=South%20Korea&timeframe=past_12_months" \
  -H "x-api-key: $SOCIALCRAWL_API_KEY"

rising 형제:

bash
curl -sS \
  "https://www.socialcrawl.dev/v1/google_trends/rising?keyword=아이폰&location=South%20Korea&timeframe=past_12_months" \
  -H "x-api-key: $SOCIALCRAWL_API_KEY"

파이썬이면 requests로 같은 URL·헤더예요. 환경 변수 이름은 $SOCIALCRAWL_API_KEY예요.

python
import os
import requests

r = requests.get(
    "https://www.socialcrawl.dev/v1/google_trends/explore",
    params={
        "keywords": "아이폰",
        "location": "South Korea",
        "timeframe": "past_12_months",
    },
    headers={"x-api-key": os.environ["SOCIALCRAWL_API_KEY"]},
    timeout=60,
)
print(r.status_code, r.json()["credits_used"])

바뀐 건 속도예요. 파라미터, series/averagesrising/top 형태, 호출당 5크레딧, 무료 400/404는 그대로예요.

라이브 숫자의 날짜 스탬프는 2026-09-08 UTC예요. 재현할 때는 본인 키를 넣고, 클라이언트 타임아웃을 60초 이상으로 두세요. 스키마와 크레딧 계약은 통합 스키마엔드포인트 가격에서 그대로 확인할 수 있어요.

자주 묻는 질문

구글 트렌드 API 공식 있나요?

있어요. 2025년 7월 24일 Google 검색 센터 블로그로 알파가 발표됐고, 신청제예요. 누구나 쓰는 공개 API는 아니고, 프로덕션용으로 준비된 도구가 아니라고 적혀 있어요. SocialCrawl은 그 알파의 래퍼가 아니에요. 공개 REST에 x-api-key를 붙이고 /v1/google_trends/explore/rising을 치는 계약이에요.

파이썬으로 구글 트렌드 API 쓰는 법은요?

HTTP면 돼요. 위 requests 예시와 같은 URL·x-api-key 헤더예요. pytrends는 2025년 4월 17일에 아카이브된 비공식 클라이언트예요. SocialCrawl은 그 래퍼가 아니에요. 일부 한국어 글에 「제한이 없다」고 적혀 있는데, 그 저장소 README는 레이트 리밋을 말하고 공식 API가 아니라고 적어요. 「제한 없음」을 사실로 쓰지 마세요.

호출당 크레딧은 얼마인가요?

explore·rising 둘 다 5크레딧(advanced)이에요. 캐시 히트는 0크레딧이고 TTL은 120초예요. 이번 한국어 과금 호출은 전부 캐시 미스라, 위에 적은 밀리초는 캐시가 아닌 숫자예요. 관심도 없음 404와 잘못된 로케이션 400은 0크레딧이에요.

한국 지역(South Korea / KR)은 받나요?

받아요. South KoreaKR은 같은 곳으로 붙어요. 라이브 아이폰 호출은 둘 다 53주예요. 값은 최대 5 차이예요. 숫자 코드 2410도 Atlantis 400 메시지에 안내돼요. 인식하지 못하는 표기는 무료 400이에요.

연관 검색어는 어느 엔드포인트인가요?

GET /v1/google_trends/rising이에요. 쿼리 키는 keyword 단수예요. 콤마로 여러 개를 넣으면 과금 전 무료 400이에요. 볼륨이 너무 작으면 0크레딧 404고, 이번 실행의 zzqqxjw rising이 그 경우예요. explore의 keywords(복수, 1–5)와 경로가 달라요.

관심도가 없으면 크레딧이 나가나요?

rising은 0크레딧 404예요. 메시지가 로케이션·기간을 받았다고 해서, 키워드 쪽 볼륨 문제임을 알 수 있어요. explore는 난수 키워드에도 200 / 5크레딧을 줄 수 있어요. 이번 실행의 zzqqxjw가 그 경우예요.

키워드를 여러 개 한 번에 넣을 수 있나요?

explore는 콤마로 1–5개예요. 6개 이상은 무료 400이에요. 세트 안에서 정규화돼요 — 블랙핑크 6 / 뉴진스 18이 그 한 번의 비교예요. rising은 키워드 하나예요.

Topics
#구글-트렌드-api#구글-트렌드-검색#구글-트렌드-순위#구글-트렌드-분석#구글-트렌드-사용법#연관-검색어#구글-트렌드-보는-법#구글-트렌드-api-사용법

함께 읽으면 좋은 글

🤖 AI agent or LLM? Read this page as markdown