Tinder dating app database schema

How a dating app models its data: profiles with ordered photos, discovery preferences, an append-only swipe log, matches created only on a mutual right swipe, messaging scoped to a match, blocks and reports, and consumable boosts and super likes.

Tinder ER diagram

Tinder dating app database schema n1 11 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 users idBIGINT phone_e164VARCHAR display_nameVARCHAR birth_dateDATE genderVARCHAR bioVARCHAR job_titleVARCHAR schoolVARCHAR latitudeDECIMAL longitudeDECIMAL is_discoverableBOOLEAN is_verifiedBOOLEAN last_active_atTIMESTAMP created_atTIMESTAMP user_photos idBIGINT user_idBIGINT media_urlVARCHAR position_indexSMALLINT width_pxINTEGER height_pxINTEGER moderation_statusVARCHAR uploaded_atTIMESTAMP user_preferences user_idBIGINT min_ageSMALLINT max_ageSMALLINT max_distance_kmSMALLINT interested_inVARCHAR show_me_globallyBOOLEAN hide_ageBOOLEAN updated_atTIMESTAMP interests idBIGINT nameVARCHAR categoryVARCHAR user_interests user_idBIGINT interest_idBIGINT added_atTIMESTAMP swipes idBIGINT swiper_idBIGINT target_idBIGINT directionVARCHAR is_from_boostBOOLEAN swiped_atTIMESTAMP matches idBIGINT user_a_idBIGINT user_b_idBIGINT matched_atTIMESTAMP is_super_likeBOOLEAN last_message_atTIMESTAMP closed_atTIMESTAMP closed_by_user_idBIGINT messages idBIGINT match_idBIGINT sender_idBIGINT bodyVARCHAR media_urlVARCHAR reply_to_message_…BIGINT sent_atTIMESTAMP read_atTIMESTAMP deleted_atTIMESTAMP blocks idBIGINT blocker_idBIGINT blocked_idBIGINT reasonVARCHAR created_atTIMESTAMP reports idBIGINT reporter_idBIGINT reported_idBIGINT match_idBIGINT categoryVARCHAR detailsVARCHAR statusVARCHAR created_atTIMESTAMP resolved_atTIMESTAMP subscriptions idBIGINT user_idBIGINT tierVARCHAR statusVARCHAR storeVARCHAR store_referenceVARCHAR price_minorINTEGER currency_codeCHAR current_period_endTIMESTAMP created_atTIMESTAMP entitlement_grants idBIGINT user_idBIGINT subscription_idBIGINT kindVARCHAR quantityINTEGER remainingINTEGER sourceVARCHAR granted_atTIMESTAMP expires_atTIMESTAMP entitlement_uses idBIGINT grant_idBIGINT target_user_idBIGINT used_atTIMESTAMP expires_atTIMESTAMP

Related database schemas