
왜 게이미피케이션인가
피아노 실력은 하루아침에 늘지 않습니다. 매일 조금씩, 오래 쳐야 합니다. 그런데 반복 연습은 지루하고, 지루하면 그만둡니다. 결국 학습 앱의 진짜 적은 "어려움"이 아니라 이탈입니다.
그래서 목표를 실력 향상 그 자체가 아니라, "내일도 다시 앉게 만들기" 로 잡았습니다. 게임이 사람을 오래 붙잡아 두는 방법들을 연습에 들여왔습니다.
목표를 "실력 향상"이 아니라 "내일도 다시 앉게 만들기" 로 잡았다. 그래서 게임이 사람을 오래 붙잡아 두는 방법들을 연습에 들여왔다.
진행감: XP와 레벨
연습할 때마다 점수에 비례해 XP가 쌓이고 레벨이 오릅니다. XP는 난이도 배수로 가중해 어려운 곡이 더 값집니다 — Easy 1.0 · Normal 1.5 · Hard 2.0 · Expert 3.0. 레벨업에 필요한 XP는 완만한 곡선으로 늘어납니다.
xpForNextLevel(level) = 100 × level^1.5 # Lv2≈283, Lv5≈1118, Lv10≈3162등급에 따라 보석(💎)도 줍니다 — S(≥90) 15 · A(≥80) 10 · B(≥70) 5, 첫 클리어 +10.
어뷰징 방지: 곡마다 XP 상한을 둬서 쉬운 곡을 무한 반복해 레벨을 올리는 farming을 막고, 화면 터치 체험 모드는 아예 점수·XP를 반영하지 않습니다.
지속: 스트릭 + 스트릭 프리즈
연속 학습(스트릭)은 강력한 동기지만, 하루만 빠져도 무너지면 오히려 스트레스가 됩니다. 그래서 스트릭 프리즈를 뒀습니다. 바쁜 하루엔 스트릭이 얼어붙어 유지되고, 사용자는 "다 잃었다"는 좌절 대신 "지켜냈다"는 안도를 느낍니다. 완벽주의로 이탈하지 않게 하는 완충장치입니다.
오늘의 목표: 일일 목표
매일 하나의 일일 목표가 주어집니다. "오늘 이만큼 하면 스트릭이 이어진다"는 분명한 선이, 하루의 첫 세션을 여는 방아쇠가 됩니다. 막연한 "연습해야지"보다, 눈앞의 오늘치 목표가 행동을 부릅니다.
사회적 동기: 티어 리그와 친구

혼자 하는 연습에 주간 티어 리그를 붙였습니다. 이번 주의 노력이 순위로 보이고, 친구를 맺어 서로의 진행을 봅니다. 경쟁이 부담스러운 사람에게도, "나만 안 하는 게 아니구나"라는 가벼운 사회적 압력은 은근히 강합니다.
짧은 목표와 캐릭터: 미션과 마스코트 "마에스트로"
큰 목표는 멀게 느껴지므로, 미션으로 잘게 쪼갰습니다. "오늘 3곡", "정확도 90% 한 곡" 같은 짧은 목표가 즉각적인 방향을 줍니다. 그리고 마스코트 마에스트로가 빈 화면, 에러, 성취의 순간마다 등장해 앱에 표정을 입힙니다. 숫자만 있는 대시보드와, 나를 응원하는 캐릭터가 있는 앱은 체감이 완전히 다릅니다.
순간의 보상: 셀러브레이션
연습을 끝내면 결과 화면에서 셀러브레이션이 터집니다. 잘한 순간을 즉시, 시각·촉각(햅틱)으로 보상하는 것 — 이 즉각적 피드백 루프가 "한 번 더"를 부릅니다.
수익화: 구독 기반
수익은 구독료에서 나옵니다. 경계는 분명합니다 — 구독은 '무엇을 연습할지'(커리큘럼·카탈로그 접근)를 열고, '얼마나 재미있게 연습할지'(XP·스트릭·리그)는 과금 대상이 아닙니다. XP를 결제로 사거나 진도를 게임 진행으로 막지 않습니다. 즉 게이미피케이션은 매출 수단이 아니라 리텐션 장치입니다. (캐릭터 의상 같은 꾸밈 과금은 구상 단계일 뿐, 아직 지원하지 않습니다.)
리텐션 효과는 출시 후에야 확인됩니다. 이 설계가 노리는 지표는 명확합니다 — 다음날/7일 재방문율, 스트릭 유지율, 일일 목표·미션 완료율, 스트릭 프리즈 사용률. 지금은 "검증된 수치"가 아니라 "관찰할 가설"입니다.
마치며
게이미피케이션은 화려한 애니메이션이 아니라 심리 설계입니다. 진행감(XP), 손실 회피의 완화(스트릭 프리즈), 명확한 목표(일일 목표), 사회적 증거(리그), 즉각 보상(셀러브레이션)이 맞물려 하나의 습관 루프를 만듭니다. LevelUp Piano에서 가장 여러 번 다시 설계한 곳도 결국 "내일 다시 앉게 만드는" 이 보이지 않는 루프였습니다.

Why gamify
Piano skill doesn't grow overnight. You have to play a little, every day, for a long time. But repetition is boring, and boredom makes people quit. In the end, a learning app's real enemy isn't difficulty — it's drop-off.
So I set the goal not as skill improvement itself, but as "get them to sit down again tomorrow." I borrowed the devices that keep games sticky and brought them into practice.
The goal was set not as "skill improvement" but as "get them to sit down again tomorrow." So I borrowed the devices that keep games sticky and brought them into practice.
A sense of progress: XP and levels
Every session earns XP in proportion to your score and levels you up. XP is weighted by a difficulty multiplier, so harder songs are worth more — Easy 1.0 · Normal 1.5 · Hard 2.0 · Expert 3.0. The XP needed to level up grows on a gentle curve.
xpForNextLevel(level) = 100 × level^1.5 # Lv2≈283, Lv5≈1118, Lv10≈3162Grades also award gems (💎) — S (≥90) 15 · A (≥80) 10 · B (≥70) 5, plus +10 for a first clear.
Anti-abuse: each song has an XP cap that blocks farming levels by grinding easy songs, and the on-screen touch trial mode records no score or XP at all.
Persistence: streaks + streak freeze
A streak is powerful motivation, but if one missed day collapses it, it becomes stress. So there's a streak freeze. On a busy day the streak freezes and holds, and instead of "I lost it all," the user feels "I protected it." It's a cushion that keeps perfectionism from causing drop-off.
Today's goal: daily goals
Each day gives you a daily goal. A clear line — "do this much today and the streak continues" — is what triggers the day's first session. A concrete target for today pulls action better than a vague "I should practice."
Social motivation: tier leagues and friends

I attached a weekly tier league to solo practice. This week's effort shows up as a rank, and friends can see each other's progress. Even for people who find competition stressful, the gentle social pressure of "so it's not just me slacking" is quietly strong.
Small goals and a character: missions and the mascot "Maestro"
Big goals feel far away, so missions break them down. Short targets like "3 songs today" or "one song at 90% accuracy" give immediate direction. And the mascot Maestro shows up at empty states, errors, and moments of achievement, giving the app a face. A dashboard of bare numbers and an app with a character cheering you on feel completely different.
Reward in the moment: celebration
Finish a session and the results screen bursts into celebration. Rewarding a good moment instantly, visually and through haptics — that immediate feedback loop invites "one more."
Monetization: subscription-based
Revenue comes from the subscription. The boundary is clear — the subscription unlocks what you practice (curriculum and catalog access), while how fun the practice is (XP, streaks, leagues) is never monetized. You can't buy XP, and progress is never gated behind game progression. Gamification is a retention device, not a revenue lever. (Cosmetic monetization like character outfits is still just an idea, not yet supported.)
Retention effects only show up after launch. The metrics this design targets are clear — next-day / 7-day return rate, streak retention, daily-goal and mission completion rates, and streak-freeze usage. For now these are hypotheses to observe, not proven numbers.
Closing
Gamification isn't flashy animation — it's psychological design. A sense of progress (XP), softened loss aversion (streak freeze), a clear target (daily goals), social proof (leagues), and immediate reward (celebration) interlock into a single habit loop. The place I redesigned the most times in LevelUp Piano was, in the end, that invisible loop that "gets you to sit down again tomorrow."