QR 코드 인식이 안 될 때: 원인 10가지와 해결 방법
작성: 2026-08-31 · 수정: 2026-08-31
QR 코드가 인식되지 않는 원인은 데이터 손상인 경우가 거의 없습니다. 대개는 물리적 문제입니다. 너무 작거나, 너무 옅거나, 흐릿하거나, 여백이 없는 것이죠. 아래 열 가지 원인을 순서대로 확인해 보세요. 각 항목은 실제로 보이는 증상과 해결 방법을 함께 적었습니다.
먼저 실패 상황을 재현하세요
무엇을 고치기 전에 언제 실패하는지부터 확인하세요. 모니터에서는 되는데 종이에서 안 되나요? 10cm에서는 되는데 팔 길이 거리에서는 안 되나요? 한 기기만 읽고 다른 기기는 못 읽나요? 이 관찰 하나가 대개 아래 원인 중 하나를 곧바로 가리킵니다.
원인 1~4: 크기·색·여백
- 거리에 비해 너무 작음. 증상: 휴대폰을 바짝 대면 읽히지만 실제로 서는 위치에서는 안 됩니다. 해결: 10:1 규칙을 적용하세요. 인쇄된 코드는 스캔 거리의 10분의 1 이상, 어떤 경우에도 2cm 이상이어야 합니다. 스캔 거리별 크기 표를 참고하세요.
- 대비 부족. 증상: 밝은 화면에서는 괜찮지만 종이나 어두운 조명에서는 불안정합니다. 카메라는 색상이 아니라 밝기를 보기 때문에 흰 바탕의 빨강이나 파스텔·노랑 계열은 “밝은 색 위의 밝은 색”으로 읽힙니다. 해결: 대비비 3:1 이상, 가능하면 4.5:1을 유지하세요. 이 생성기는 색 조합이 그 아래로 내려가면 경고합니다.
- 색 반전. 증상: 어두운 바탕의 밝은 코드가 일부 기기에서만 읽힙니다. 표준은 밝은 바탕에 어두운 모듈을 전제하며, 많은 디코더는 반전을 아예 시도하지 않습니다. 해결: 색을 되돌리세요. 생성기가 반전 조합을 경고하는 이유입니다.
- 여백(Quiet Zone) 없음. 증상: 코드가 그림·테두리·사진에 붙어 있고 스캐너가 초점만 헤맵니다. 디코더가 격자를 분리하려면 4모듈 폭의 빈 여백이 필요합니다. 해결: 여백을 되살리되 주변 레이아웃 색이 아니라 코드 배경과 같은 밝은 색으로 두세요.
원인 5~7: 인쇄·표면·손상
- 흐릿하거나 저해상도 인쇄. 증상: 경계가 뭉개지고 회색빛이 돕니다. 대개 작은 PNG를 확대한 경우입니다. 해결: SVG를 쓰거나 1024px 이상 PNG를 원본 크기 이하로 배치하세요. PNG vs SVG와 QR 코드 인쇄 시 주의점을 참고하세요.
- 반사와 곡면. 증상: 평평한 교정본에서는 되지만 완성된 병·컵·코팅 카드·유광 포스터에서는 안 됩니다. 반사는 모듈을 날려버리고 곡면은 격자를 왜곡합니다. 해결: 무광 용지를 쓰고, 가장 평평한 면에 배치하고, 최소 크기보다 크게 만드세요.
- 오류 복원 한도를 넘는 손상. 증상: 새것일 때는 되다가 긁히거나 접힌 뒤, 혹은 로고를 얹은 뒤 실패합니다. 오류 복원은 코드의 약 7%(L), 15%(M), 25%(Q), 30%(H)까지만 복구하며 로고도 같은 한도를 씁니다. 해결: Q나 H로 올리고 겹치는 요소를 한도보다 훨씬 작게 유지한 뒤 다시 인쇄하세요.
원인 8~10: 데이터·카메라·목적지
- 데이터가 너무 많음. 증상: 추적 파라미터가 붙은 긴 URL이나 항목이 많은 vCard는 눈에 띄게 촘촘한 코드가 되고 작은 크기에서 실패합니다. 바이트가 늘면 버전이 올라가고, 같은 폭에 더 작은 모듈이 더 많이 들어갑니다. 해결: 내용을 줄이세요. QR 코드의 원리에서 자세히 다룹니다.
- 코드가 아니라 카메라 문제. 증상: 한 휴대폰은 즉시 읽는데 다른 기기는 전혀 못 읽습니다. 대부분의 카메라는 약 10cm보다 가까이 초점을 잡지 못하고, 렌즈에는 기름기가 끼며, 코드를 띄운 화면이 너무 어두울 수도 있습니다. 해결: 렌즈를 닦고, 한 걸음 물러서고, 화면 밝기를 올리고, 구형 안드로이드에서는 전용 스캐너 앱을 쓰세요.
- 잘못되었거나 죽은 목적지. 증상: 스캔은 되어 URL이 뜨는데 페이지가 404이거나 아무 일도 일어나지 않습니다. 오타, 빠진
https://, 혹은 만료·유료화된 동적 단축 링크가 원인입니다. 해결: 디코딩된 텍스트를 확인하고, 외부 리다이렉트에 의존하기 전에 정적 QR vs 동적 QR을 읽어 보세요.
2분 체크리스트
- 코드 크기를 재서 목표 스캔 거리와 비교합니다.
- 밝은 바탕에 어두운 모듈인지, 대비 경고가 없는지 확인합니다.
- 레이아웃 파일에서 4모듈 여백이 온전한지 확인합니다.
- 실제 조명 아래 최종 인쇄물을 아이폰과 안드로이드로 스캔합니다.
- 디코딩된 텍스트를 소리 내어 읽고 브라우저에서 열어 봅니다.
해당 항목이 여러 개라면 파일을 손보기보다 코드를 다시 만드는 편이 낫습니다. 몇 초면 되고, 크기·색·오류 복원을 제대로 맞춘 새 코드가 살려낸 코드보다 훨씬 안정적입니다.
관련 도구생성기로 만들기