본문으로 건너뛰기

기본 사항

스마트 링크 및 리디렉션

스마트 링크 mapps.one/habitly 주소는 방문자마다 기기를 확인하고 몇 밀리초 안에 보낼 곳을 결정해요. 이 페이지에서는 기본 규칙, 규칙을 바꾸는 방법, 링크 미리보기 봇에 표시되는 내용, 캠페인 태그가 스토어로 전달되는 방식을 설명해요.

기본 라우팅

방문자이동 위치해당 링크가 없는 경우
iPhone, iPad, iPodApp Store랜딩 페이지
AndroidGoogle Play랜딩 페이지
Huawei 및 Honor 기기, HarmonyOSAppGalleryGoogle Play, 그다음 랜딩 페이지
WindowsMicrosoft Store랜딩 페이지
macOSApp Store랜딩 페이지
인식되지 않은 기기("기타")랜딩 페이지—
Linux 및 ChromeOS랜딩 페이지—

기기는 브라우저의 사용자 에이전트로 감지해요. 태블릿은 같은 운영체제의 휴대폰과 같은 규칙을 따라요. 데스크톱 사이트를 요청하는 iPad는 스스로를 Mac으로 식별하지만, macOS의 기본 이동 위치가 App Store이므로 여전히 App Store로 이동해요.

리디렉션 규칙

앱의 링크 탭을 열어 iOS, Android, Huawei, Windows, macOS, 기타 플랫폼별로 이동 대상을 선택하세요. 선택할 수 있는 항목은 다음과 같아요.

  • App Store, Google Play, AppGallery 또는 Microsoft Store: 해당 스토어 등록 정보로 리디렉션해요.
  • 웹 URL: 앱에 저장된 웹 주소(예: 웹 버전이나 대기자 명단 페이지)로 리디렉션해요.
  • 랜딩 페이지: 스마트 링크 주소에서 랜딩 페이지를 보여 줘요.

선택한 이동 대상에 저장된 링크가 없으면 대체 경로가 적용돼요. Huawei 방문자는 Google Play를 시도한 다음 랜딩 페이지로 이동하고, 그 밖의 모든 방문자는 랜딩 페이지를 보게 돼요. 대시보드의 규칙 미리보기에는 현재 각 플랫폼이 최종적으로 어디로 이동하는지 표시되며, 대체 경로를 사용하는 행은 따로 표시돼요.

예시: Habitly에는 Mac 앱이 없어요. macOS를 랜딩 페이지로 설정하면 Mac 방문자에게 Mac App Store의 iPhone 앱 등록 정보 대신 스크린샷과 두 스토어 배지가 표시돼요.

리디렉션은 Cache-Control: no-store 헤더와 함께 HTTP 302를 사용하므로, 브라우저와 프록시가 리디렉션을 캐시하지 않고 규칙 변경이 다음 방문부터 적용돼요.

링크 미리보기와 봇

누군가 채팅이나 게시물에 링크를 붙여 넣으면 해당 앱이 미리보기를 만들기 위해 페이지를 가져와요. 이런 크롤러는 리디렉션이 아닌 랜딩 페이지를 항상 받으므로, 미리보기에는 페이지의 Open Graph 태그에서 가져온 앱 이름, 한 줄 소개, 이미지가 표시돼요. 여기에는 Facebook, Instagram, WhatsApp, X, LinkedIn, Slack, Discord, Telegram, iMessage, Pinterest, Reddit, Mastodon, Bluesky, Snapchat, Skype, Zoom, Microsoft Teams 등이 포함돼요.

검색 엔진 크롤러, SEO 도구, 업타임 모니터, AI 크롤러, 그리고 curl, wget, python-requests 같은 명령줄 클라이언트도 봇으로 취급돼요. 봇은 랜딩 페이지를 받으며 분석에 집계되지 않아요.

앱 내 브라우저

Instagram, Facebook, TikTok, X, LinkedIn, Snapchat, Pinterest, LINE, Telegram, WeChat, Reddit, Threads 안에서 열린 링크를 인식해요. 방문자는 다른 방문과 마찬가지로 기기에 따라 라우팅돼요. 이런 브라우저는 보통 참조 정보를 보내지 않지만, 분석에서는 방문자가 온 앱이 유입 경로로 기록돼요.

캠페인 태그

채널을 비교하려면 스마트 링크에 표준 UTM 태그를 추가하세요.

https://mapps.one/habitly?utm_source=instagram&utm_medium=social&utm_campaign=launch

mapps.one은 항상 utm_source, utm_medium, utm_campaign 값을 분석에 기록해요. 캠페인 파라미터를 스토어에 전달 옵션이 켜져 있으면(기본값) 태그가 이동 대상이 이해하는 형식으로도 전달돼요.

이동 대상추가되는 항목
Google Play URL 인코딩된 UTM 태그를 담은 referrer 파라미터. 앱에서 Play Install Referrer API로 읽을 수 있어요.
https://play.google.com/store/apps/details?id=com.habitly.app&referrer=utm_source%3Dinstagram%26utm_medium%3Dsocial%26utm_campaign%3Dlaunch
App Store 최대 40자의 ct 캠페인 토큰. utm_campaign 값이 사용되며, 캠페인이 없으면 utm_source 값이 사용돼요.
https://apps.apple.com/app/id1612345678?ct=launch
웹 URL UTM 태그 그대로.
https://habitly.app/?utm_source=instagram&utm_medium=social&utm_campaign=launch
AppGallery, Microsoft Store없음. 추가 파라미터 없이 등록 정보가 열려요.

다섯 가지 태그가 모두 전달돼요: utm_source, utm_medium, utm_campaign, utm_term, utm_content. 각 값은 100자로 잘려요.

App Store 캠페인 관련 참고 사항: App Store Connect는 링크에 제공자 토큰(pt)도 함께 있을 때만 ct 토큰을 캠페인에 귀속해요. 스토어 링크는 표준 형식으로 저장되므로, App Store 링크에 붙여 넣은 pt 값은 유지되지 않아요. 채널을 비교하려면 mapps.one 분석의 캠페인 세부 분석을 사용하세요.

스토어 배지 링크

랜딩 페이지의 스토어 배지는 추적 리디렉션인 mapps.one/habitly/go/{store} 주소를 가리켜요. 클릭은 스토어 클릭으로 집계된 다음 방문자가 등록 정보로 이동해요. 앱에 해당 스토어 링크가 없으면 방문자는 랜딩 페이지로 돌아가요.

기기와 관계없이 특정 스토어로 보내고 싶을 때(예: Android 전용 캠페인) 이 URL을 직접 사용할 수 있어요. /go/ URL에 추가한 UTM 태그도 스마트 링크와 같은 방식으로 전달돼요.

스토어 키URL
app_storemapps.one/habitly/go/app_store
google_playmapps.one/habitly/go/google_play
app_gallerymapps.one/habitly/go/app_gallery
microsoft_storemapps.one/habitly/go/microsoft_store
webmapps.one/habitly/go/web

URL 참조

URL용도
/habitly스마트 링크: 기기별 리디렉션 또는 랜딩 페이지
/habitly/page모든 기기에서 표시되는 랜딩 페이지
/habitly/go/{store}스토어 하나로 이동하는 추적 리디렉션
/habitly/open/{path}설치된 앱으로 들어가는 딥 링크
/habitly/privacy, /habitly/privacy/{language}개인정보 처리방침
/habitly/terms, /habitly/terms/{language}이용약관
/habitly/press, /habitly/press.zip프레스 키트 페이지 및 다운로드
/habitly/qr.svg, /habitly/qr.png스마트 링크용 QR 코드

링크가 작동하지 않을 때

  • 404 Not Found: 이 링크 주소를 사용하는 앱이 없어요. 철자를 확인하거나 링크 주소가 변경되었는지 확인하세요.
  • 410 Gone, "일시 중지됨": 대시보드에서 앱이 일시 중지되었어요. 다시 켜세요.
  • 410 Gone, "더 이상 이용할 수 없음": 신뢰 및 안전팀이 앱을 정지했어요. 지원팀에 문의하세요.
  • 항상 랜딩 페이지가 표시됨: 해당 플랫폼의 이동 대상에 저장된 링크가 없거나, 규칙이 랜딩 페이지로 설정되어 있거나, 봇처럼 보이는 클라이언트로 테스트하고 있어요.