Sik.limited Logo

UX 라이팅이란? 버튼 문구 하나로 사용성을 높이는 법

버튼 색은 거의 안 움직이고 문구가 움직입니다. 측정된 전환율 수치와 토스의 before/after, 오류 문구 5종 분류까지 실무 기준으로 정리했습니다.

Sik · · 7분 읽기 ·

버튼의 확인은 짧습니다. 그런데 사용자는 그걸 누르기 전에 위로 올라가 본문을 다시 읽습니다. 뭔가를 확인하는지 버튼이 안 알려주기 때문입니다.

예약 취소하기는 조금 길지만 그 왕복을 없앱니다. 이 차이를 별거 아니라고 생각하기 쉬운데, 지표로 보면 생각보다 큽니다.

먼저: 색은 안 움직이고 문구는 움직입니다

A/B 테스트 사례를 모아 보면 패턴이 제법 일관됩니다.

버튼 색을 바꾸는 실험은 대부분 단독으로는 지표를 거의 움직이지 못합니다. 많이 인용되는 "초록을 빨간색으로 바꿔 몇 % 상승" 식의 사례들은 재현이 잘 안 되는 쪽입니다. 반면 문구를 바꿔 생긴 변화는 꾸준히 관찰됩니다.

수치로 보면 이렇습니다.

  • 불필요한 문구를 도려내는 것만으로 전환율이 5% 오른 사례가 있습니다.
  • 온보딩 흐름의 카피를 다시 쓴 뒤 완료율이 23% 오르고 고객문의가 15% 줄었습니다.
  • CTA 문구 하나를 바꿔 검증된 상승폭은 보통 6% 안팞입니다. 대신 네비게이션 구조를 고치면 120%를 넘기도 합니다.

마지막 줄이 중요합니다. 문구는 공짜가 아니지만 만병도 아닙니다. 구조가 틀렸으면 문구로 메꾸기 어렵습니다. 버튼 카피를 서른 번 고치는 것보다 화면에서 뭐가 먼저 읽히는지를 고치는 게 빠를 때가 있습니다.

개인화된 CTA가 전환율을 두 배 이상 올렸다는 사례도 돌아다니는데, 이건 문구가 아니라 맥락의 힘입니다. 같은 문장이라도 사용자가 지금 뭔을 하려는지 알고 쓰면 다르게 읽힙니다.

좋은 버튼은 행동과 결과를 같이 말합니다

가장 단순한 규칙입니다. 누르면 무슨 일이 생기는지를 버튼만 보고 예상할 수 있어야 합니다.

모호한 문구더 구체적인 문구
확인휴지통으로 이동
저장변경 사항 저장
계속배송지 입력하기
제출신청서 보내기

항상 길게 쓰라는 뜻은 아닙니다. 기준은 길이가 아니라 예측 가능성입니다. 되돌리기 어려운 행동일수록 라벨이 구체적이어야 합니다. 삭제, 결제, 전송이 그렇습니다.

반대로 위험하지 않고 매일 누르는 버튼은 짧은 게 낫습니다. 모든 버튼을 서술형으로 만들면 화면이 무거워집니다.

토스가 쓰는 원칙 중 바로 쓸 만한 것

국내에서 가장 체계가 잡힌 사례라 짚고 가겠습니다. 여덟 가지 원칙 중 설명 없이 바로 적용되는 것들이 있습니다.

잡초 제거

의미 없는 단어를 뎌어냅니다. "앞으로 수수료를 납부하세요"에서 '앞으로'는 아무 일도 하지 않습니다. 지우면 문장이 더 정확해집니다.

이건 놀랍도록 자주 걸립니다. 한번 글을 써놓고 부사와 관형어를 전부 지워보세요. 의미가 안 바뀌면 원래 없어도 됐던 겁니다.

예측 가능한 힌트

다음 화면에서 무슨 일이 일어나는지를 미리 알려줍니다. 버튼 규칙과 같은 원리인데, 버튼뿐 아니라 링크·리스트 항목·배너에도 적용됩니다.

강요 아닌 제안

"이 혜택을 놓치면 손해"는 손실 회피를 자극해 당장 전환율을 올릴 수 있습니다. 대신 서비스에 대한 신뢰를 깎습니다. 특히 금융·의료처럼 사용자가 이미 불안한 영역에서는 부작용이 큽니다.

숨은 감정 찾기

대출을 다 갚은 순간 "축하해요"라고 말하는 식입니다. 기능적으로는 불필요한 문장이지만, 사용자가 그 순간 무엇을 느끼는지를 알면 넣을 자리가 보입니다.

다만 이건 남용하면 금방 지칩니다. 모든 화면이 말을 건네면 제품이 수다스러워집니다.

오류 문구는 다섯 종류입니다

가장 방치되는 영역이면서 손해가 큰 곳입니다. "오류가 발생했습니다. 잠시 후 다시 시도해주세요"는 절반의 경우 거짓말입니다. 다시 시도해도 똑같이 실패하니까요.

원인을 갈라야 문구가 나옵니다. AI 기능이 들어간 화면이라면 최소 다섯 가지로 갈립니다.

네트워크가 끊긴 건지, 요청이 너무 많은 건지, 콘텐츠가 필터에 걸린 건지, 대화가 너무 길어진 건지, 응답이 시간을 초과한 건지. 다섯은 사용자가 해야 할 일이 전부 다릅니다.

쓸 때는 세 가지를 같이 넣습니다. 무슨 일이 있었는지, 왜 그러한지 한 줄, 그리고 지금 누를 버튼 하나.

마지막이 핵심입니다. 오류 화면에 선택지를 세 개 놓으면 사용자는 이미 당황한 상태에서 또 하나의 의사결정을 해야 합니다. 상태별로 무엇을 검수해야 하는지는 AI가 만든 UI 검수 체크리스트에 정리해 두었습니다.

빈 화면에서 확인할 한 가지

비어 있다는 사실만 알리면 사용자는 거기서 멈춥니다. 정보와 이유와 다음 행동이 한 덩어리로 이어져야 합니다.

저장된 항목이 없어요 다음에 관심 있는 상품을 저장해 보세요상품 둘러보기를 두는 방식입니다. 버튼까지 있어야 흐름이 열립니다.

말투는 일관되게, 단 명확함이 먼저

한 화면에서는 다정하고 다음 화면에서는 법률 문서처럼 딱딱하면 사용자는 제품의 태도를 예측하지 못합니다. 해요체든 합니다체든 한쪽으로 몰아야 합니다.

다만 친근함이 명확함을 이기면 안 됩니다. 결제, 개인정보, 삭제처럼 되돌리기 어려운 순간에는 재치보다 정확한 설명이 먼저입니다. 이모지 하나가 분위기를 바꿔서 사용자가 사안의 무게를 오판하는 일도 생깁니다.

버튼 하나를 검토하는 네 가지 질문

  1. 이 문구만 보고 누른 뒤의 결과를 예상할 수 있는가
  2. 사용자가 하려는 행동의 동사가 들어 있는가
  3. 실패하거나 되돌릴 때 다음 행동이 보이는가
  4. 다른 화면의 같은 행동과 같은 말로 쓰였는가

네 번째가 가장 많이 틀립니다. 같은 행동을 화면마다 다른 말로 부르면 사용자는 다른 기능으로 오해합니다. 이걸 사람의 기억으로 막을 수는 없으니 디자인 시스템 문서에 문구까지 적어둘 수밖에 없습니다.

AI에게 카피를 시키는 경우

카피 변형을 열 개 받는 건 이제 10초면 됩니다. 그래서 오히려 고르는 기준이 병목이 됐습니다.

요청할 때는 문구만 달라고 하지 말고 판단 근거를 같이 달라고 하세요.

이 오류 문구가 사용자의 다음 행동을 알려주는지 설명하고, 대안 두 개를 이유와 함께 제안해줘.

걸러낼 때 쓰는 기준은 세 개면 충분합니다. 우리 제품이 쓰지 않는 단어가 섞였는가, 확신할 수 없는 것을 단정하는가, 사용자가 불안한 순간에 농담을 하는가.

문장을 쓰는 비용은 확실히 싸졌습니다. 어느 문장이 위험을 줄이고 브랜드에 맞는지 판단하는 비용은 그대로입니다. 이 판단을 언어로 바꾸는 훈련은 안목을 기르는 방법과 같은 근육을 씁니다.

반론: 문구에 신경 쓰는 게 과한 것 아닌가

손해를 짚고 가겠습니다. 버튼 문구 하나를 두 시간씩 회의하는 팀을 본 적이 있을 겁니다. 그건 낭비가 맞습니다.

단일 CTA 문구 변경의 검증된 효과가 보통 6% 안팞이라는 점을 기억해야 합니다. 지표를 크게 움직이는 건 보통 구조입니다. 사용자가 단계를 하나 덜 거치게 하거나, 필요한 정보를 필요한 순간으로 옮기는 것처럼요.

그래서 순서를 제안하자면 이렇습니다. 흐름을 먼저 고치고, 그다음 문구를 고칩니다. 문구로 구조를 메꾸려는 순간이 오면 보통 문제는 다른 데 있습니다. "이 버튼을 어떻게 설명해야 오해를 안 하지"를 고민하고 있다면 버튼이 거기 있으면 안 되는 건 아닌지 먼저 의심해보는 게 낫습니다.

그럼에도 문구를 따로 다루는 이유는 비용 대비 효과 때문입니다. 구조를 바꾸려면 개발 일정이 필요하지만 문구는 오늘 고쳐서 내일 배포할 수 있습니다. 가장 싸게 손대볼 수 있는 변수라서 먼저 건드리는 것일 뿐입니다.

UX 라이팅이 글솜씨가 아니라 사용성 설계인 이유도 여기에 있습니다. 잘 쓴 문장을 고르는 게 아니라, 사용자가 다음에 무엇을 할 수 있게 만드는지를 고르는 일이니까요.

아이콘 버튼에는 이름이 따로 필요합니다

휴지통 아이콘, 점 세 개 메뉴, 하트 모양. 글자가 없는 버튼은 화면을 깔끔하게 만들지만, 스크린 리더 사용자에게는 아무런 단서가 없습니다. 눈으로 보면 멀쩡해서 검수에서 가장 쉽게 통과되는 곳이기도 합니다.

아이콘만 있는 버튼은 접근성 이름을 따로 줘야 합니다. 이때 쓰는 문구도 같은 기준입니다. 버튼이나 아이콘이 아니라 장바구니에서 삭제처럼 행동과 대상이 들어가야 합니다.

넣을 때 주의할 게 하나 있습니다. 버튼에 보이는 글자가 있다면 접근성 이름이 그 글자를 포함해야 합니다. 화면에는 '저장'이라 쓰여 있는데 음성 이름은 '변경 사항 반영'이면, 음성 명령을 쓰는 사람은 보이는 대로 말했다가 아무 일도 안 일어나는 경험을 합니다.

다국어를 염두에 둔 문구

한국어로만 쓰고 끝날 서비스가 아니라면 미리 알아둘 게 있습니다. 같은 문구가 언어를 바꾸면 길이가 크게 달라집니다. 독일어나 러시아어로 가면 버튼 라벨이 순식간에 두 줄이 됩니다.

그래서 버튼을 그릴 때 한국어 글자 수에 딱 맞춰 잡지 않는 게 좋습니다. 여유를 둔 너비와 줄바꿈 규칙을 같이 정해두면 나중에 번역본을 받았을 때 디자인을 다시 안 고쳐도 됩니다.

어순도 문제가 됩니다. 한국어는 서술어가 마지막에 오기 때문에 "예약을 취소합니다"처럼 행동이 끝에 붙습니다. 반면 영어는 동사가 앞에 옵니다. 문장을 잘라 변수로 이어붙이는 방식으로 문구를 만들어두면, 다른 언어에서 어색한 문장이 나옵니다. 조각을 재조립하기보다 문장 통째로 다루는 편이 안전합니다.

이건 당장 해외 진출 계획이 없어도 써둘 만한 습관입니다. 문장을 조각내지 않고 통째로 관리하면 한국어에서도 말투를 맞추기 쉬워집니다. 같은 행동을 화면마다 다른 말로 부르는 사고도 줄어듭니다.

그리고 문구는 한 번 정하면 자산이 됩니다. 오류 문구나 빈 화면 문구처럼 반복되는 것은 컴포넌트처럼 묶어두면 다음 화면부터는 고민할 일이 없어집니다. 잘하는 팀들은 이걸 개인의 글솜씨에 맡기지 않고 템플릿과 기준으로 남깁니다. 사람이 바뀜어도 말투가 유지되는 유일한 방법이기도 합니다.

정리하면 순서는 이렇습니다. 흐름을 먼저 의심하고, 그다음 문구를 고치고, 반복되는 것은 기준으로 남깁니다. 세 번째를 건너뛰면 매번 처음부터 고민하게 되고, 그 고민이 쌓이면 제품의 말투는 담당자 수만큼 갈라집니다.

최신 글