⚽ Player Profile

Your player profile is your digital football identity on 4league. It stores your attributes, match history, career statistics, badges, and achievements in one place — visible to coaches, teammates, and opponents. Whether you play in a Sunday league or a regional cup, your profile grows with every match you participate in.

ℹ️
Who this guide is for

This guide is for players. If you are a Team Manager looking to manage your squad's roster, see the Team Profile guide. If you want to understand the Player role's permissions, see User Roles.

Creating a Player Profile

When you sign up for 4league and select the Player role during onboarding, the app guides you through setting up your player profile. This is your one-time setup — you can update every field at any time afterwards.

Step-by-step setup

1

Choose the Player role

On the role selection screen during onboarding, tap Player. You can hold this role alongside others (for example, a player who also manages a team).

2

Upload your photo

Add a profile photo so teammates, coaches, and opponents can recognise you. Tap the avatar placeholder to choose a photo from your camera roll or take one in-app.

3

Enter your details

Fill in your full name, date of birth, height, and weight. These are used for registration cards and official player lists.

4

Select your position

Choose your primary playing position from the list: Goalkeeper, Defender, Central Midfielder, Winger, Attacking Midfielder, Striker, and more. You can also add a secondary position.

5

Set your preferred foot

Select Right, Left, or Both. This is displayed on your public profile and visible to Team Managers browsing for players.

6

Save your profile

Tap Save to create your profile. You will land on your Player Profile home screen, which shows your stats, attribute radar, and recent match history.

Example — David sets up his profile

David, a 22-year-old midfielder, creates his player profile. He uploads his photo, sets his preferred position as Central Midfielder, selects right foot as dominant, and enters his height (178 cm) and weight (74 kg). His profile is now live and visible to Team Managers in his area.

💡
Tip

Your player profile is your football CV. Keep it updated to stand out when coaches browse players. A complete profile with a photo, attribute ratings, and an up-to-date match history receives significantly more views than an incomplete one.

Player Skills & Attributes

4league uses a six-attribute model inspired by professional football video games. The six attributes — PAC, SHO, PAS, DRI, DEF, PHY — start at a base value and grow over time. Together they form a radar chart displayed prominently on your public profile. Your overall rating is calculated as the weighted average across all six attributes.

ℹ️
Mobile only

Player profile attributes, posters, and skill-point allocation are currently mobile-only — managed from the iOS and Android apps. Players viewing the web are read-only for these features.

Attribute What it measures Sub-skills included
PAC — Pace How fast you move with and without the ball Sprint speed, acceleration, burst of pace over short distances
SHO — Shooting Quality and power of your shots on goal Shot power, finishing, accuracy, long shots, volleys
PAS — Passing Ability to distribute the ball to teammates Short passing, long passing, crossing, vision, through balls
DRI — Dribbling Ball control and ability to beat opponents Ball control, agility, balance, close control, tricks
DEF — Defense Ability to win the ball back from opponents Tackling, marking, interceptions, positioning, heading (defensive)
PHY — Physical Physical presence and endurance on the pitch Strength, stamina, jumping, aggression, balance

Attribute Points

Attributes are not free-form sliders. Each of the six attributes starts at a base value and is increased by spending attribute points (skillPoints) that you earn through achievements. Every time the app awards you an achievement that grants attribute points, your available points pool grows, and you decide which of the six attributes to invest them in from the Edit Skill Points screen on the mobile app.

Achievement Attribute points granted
Tournament MVP +50
Tournament Goalgetter +25
Player of the Week +20
Finalist +20
Player of the Match +10
Team Player +10

See the full list of achievements and the experience points (XP) they award in Player Achievements & Experience below. Source of truth: backend/config/achievements.js.

Allocating Skill Points

When you have unspent attribute points available, your Player Profile shows a Skill Points indicator. Tap it to open the Edit Skill Points screen, where you can choose how many of your available points to add to each of the six attributes. Confirm to save — your radar chart on the profile updates immediately, and the points you allocated are deducted from your pool.

ℹ️
Note

Allocating skill points the first time also unlocks the Skill Points onboarding achievement (+5 XP), so it is worth doing as soon as you earn your first points.

📈
Example — David spends earned points

David wins his first Player of the Match award, which credits +10 attribute points to his pool. He opens Edit Skill Points, adds 6 to PAC and 4 to PAS, and confirms. His radar chart updates instantly to reflect his new ratings, and his pool resets to 0 until his next achievement.

💡
Tip

Spread your points to match your real playing style. Coaches browsing players use the radar chart as a first filter, so concentrating points into your strongest attributes is a quick way to communicate your role on the pitch.

Player Matches & History

The Matches tab on your player profile shows every match you have been registered for — both past and upcoming. Match data is populated automatically when a Team Manager or organizer records match results in 4league.

What you can see in match history

📅
All Matches

A chronological list of every match you have played, including date, opponent, final score, and competition name.

🏈
Upcoming Matches

Scheduled fixtures from all competitions you are registered in, so you never miss a match date.

Personal Performance

Goals, assists, yellow cards, and red cards recorded for each match.

🔍
Match Detail View

Tap any match to see the full lineup, all match events, the final score breakdown, and which team won.

📋
Example — David reviews his recent form

David opens his Matches tab to check his recent form. He can see that in the last 5 matches, he scored 3 goals and provided 2 assists. He taps the match against Atletico City to see the full event timeline — his goal came in minute 67 and his assist in minute 82. The match finished 3–1 to his team.

Player Statistics

The Statistics tab aggregates your performance data across all competitions and seasons. Stats are computed at read time from your recorded match data, so they update automatically every time a match result is confirmed in the app.

Career statistics

The aggregator pulls events from your matches in two ways: lineup-level events (recorded by the Team Manager directly on the match sheet) and detailed Match Stats (recorded with the optional Match Stats feature on a per-match basis). The table below lists every stat the backend currently surfaces on your profile.

Stat Source Description
Appearances Match lineup Total number of matches you were listed in
Goals Lineup events or Match Stats Total goals scored across all competitions and seasons
Assists Match Stats Total assists recorded against your name
Yellow Cards Lineup events Total yellow cards received
Red Cards Lineup events Total red cards received
Wins / Draws / Losses Match results Computed from the final scores of matches your team played
Shots Match Stats Total shots, summed from per-match Match Stats entries
Corners Match Stats Total corners taken or won
Offsides Match Stats Total offside calls against you
Attacks Match Stats Total attack involvements
Tackles Match Stats Total tackles made
Passes Match Stats Total passes completed
Fouls Match Stats Total fouls committed
Goals Saved Match Stats Total saves (relevant for goalkeepers)
ℹ️
Stats coverage

The profile only tracks the stats listed above. Match Stats fields are optional — if a Team Manager does not record per-match Match Stats for a fixture, only lineup-level events (goals, cards) are aggregated for that match. Per-match averages, minutes played, and clean sheets are not aggregated by the backend.

Stats per competition and per season

Below your career totals you will find a breakdown by competition. This lets you see how you perform across different leagues, cups, or tournaments. Tap any competition to drill into a season-level view.

📊
Example — David's end-of-season stats

At the end of the season, David's career stats read: 20 appearances, 15 goals, 8 assists, 3 yellow cards, 0 red cards, 12 wins / 5 draws / 3 losses. He taps the competition breakdown and sees the split: 10 goals in the Sunday League (14 appearances) and 5 goals in the City Cup (6 appearances).

Connecting to a Team

To have your match data tracked, you must be connected to a team. Your stats, goals, assists, and cards are all recorded at the team level — meaning they only appear in your history when you are a registered player in a team that participates in a competition.

There are two ways your profile becomes linked to a team in 4league: you can join a team by entering the Team Manager's join code, or you can claim an unowned roster slot that a Team Manager already added for you by name. Both flows notify the Team Manager.

Flow A — Join with a team code

Ask your Team Manager for the team's join code, then enter it on the Connect to Team screen. The app verifies the code, lets you confirm the matching team, then sends a GET /players/connectToTeam/:teamId request. That call adds the team's id to your connectedTeams list, notifies the Team Manager, and (on your first ever team link) awards you the Team Player achievement (+100 XP, +10 attribute points).

1

Get the join code from your Team Manager

The Team Manager generates and shares a join code from their Team Profile. The code is what links your account to that specific team.

2

Open Connect to Team and enter the code

From your Player Profile, open Connect to Team, type or paste the code, and tap Verify. The app checks the code against the backend and shows the matching team (or a list, if the code resolves to more than one).

3

Confirm the team and connect

Review the team details (name, manager, location, kit) and tap Connect to Team. Once the connection is saved, the Team Manager is notified and your match stats start being tracked for every fixture that team plays.

Flow B — Claim an unowned roster slot

Team Managers can build out a roster before all players have downloaded the app — they simply add players by name. These names create unowned Players documents on the backend (no owner field set). When the real person installs 4league and connects to the team, the app shows the roster's existing entries so you can claim the one that matches your identity.

1

Connect to the team first

Complete Flow A above to connect to the team. After the connection is saved, the app navigates you to the Matching Players screen with the team's existing roster.

2

Select your roster entry

Pick the unowned roster entry that matches your identity (or pick create new if your name isn't on the list yet) and confirm. The app sends POST /players/linkPlayer/:teamId with the selected player document as the body.

3

Backend stamps ownership and merges details

When the body identifies an existing player (no new flag), the handler stamps owner on that Players document, merges your profile name, logo, shirt number, and position into the roster entry, and notifies the Team Manager that you have claimed the slot. If the body has new: 1, the handler creates a fresh Players document for you instead.

👥
Example — David joins FC Thunder

Coach Elena added David to FC Thunder's roster a week before pre-season, using just his name. When David installs 4league, Elena shares the team's join code with him. David opens Connect to Team, enters the code, confirms FC Thunder, and the app then routes him to Matching Players — where he spots his unowned roster entry and picks it. The backend links that entry to his user account, merges his profile photo and shirt number into it, and pings Elena that David is now active. From that point on, every goal, assist, and card David earns in FC Thunder's matches is automatically added to his player profile.

⚠️
Important

You can be connected to multiple teams simultaneously — for example, if you play for a club team on Saturdays and a five-a-side team on Wednesdays. Your stats are tracked separately per team and per competition. Career totals on your profile aggregate everything across all your teams.

Player Achievements & Experience

4league includes a gamification system built around achievements and experience points (XP). Every milestone you reach on the pitch — or in the app — can grant XP and, for the on-pitch achievements, attribute points you can spend on your six core attributes. Earning XP advances your player level, which is shown as a badge on your profile and in any team roster your coach views.

How XP is earned

XP comes from completing in-app actions and earning achievements. The list of achievements is curated — there is no infinite ladder of milestones — and every entry has a clearly defined trigger and reward. The achievement source of truth is backend/config/achievements.js.

Player achievements

These achievements are available only to users with the Player role. Several of them also grant attribute points that feed into the attribute pool.

Achievement key How to earn XP Attribute points
tournamentMVP Be named MVP of a tournament +300 +50
tournamentGoalgether Finish a tournament as the top scorer +100 +25
playerOfTheWeek Win the weekly Player of the Week vote +100 +20
finalist Reach a tournament final with your team +100 +20
playerOfTheMatch Be named Man of the Match in a fixture +80 +10
teamPlayer Connect to your first team +100 +10
sharePlayer Share your player profile from the app +5
finishProfile Complete every field on your player profile +5
skillPoints Open the Edit Skill Points screen for the first time and allocate points +5

Universal achievements

These achievements are available to all users regardless of role. They reward app engagement and community support — none of them grants attribute points.

Achievement key How to earn XP Frequency
rateUs Rate 4league on your app store +20 One-time
followUs Follow 4league on social media +20 One-time
viewAd Watch a rewarded ad in the app +2 Daily
viewSevenAds Watch seven rewarded ads in a single week +20 Weekly
oneMonthAds Engage with rewarded ads across a full month +40 Monthly
tagUs Tag 4league in a social media post +2 Daily
🏆
Example — David earns Tournament MVP

After the cup final, the organizer marks David as the tournament MVP. The app awards him the tournamentMVP achievement, crediting +300 XP and +50 attribute points to his pool. The XP bumps him up a level, and the next time he opens Edit Skill Points he has 50 fresh points to distribute across PAC, SHO, PAS, DRI, DEF, and PHY.

Registration Card

A registration card is an official document generated by 4league when a player is formally registered within an organization (such as a regional football association or a club federation). It serves as proof of registration for official competitions under that organization.

What the registration card contains

🖊
Registration Number

A unique identifier assigned by the organization, used in official match sheets and transfer records.

📅
Season

The season year or period for which the registration is valid (e.g., 2024–2025).

🏥
Medical Clearance

Whether the player has a valid medical clearance on file, and its expiry date if applicable.

📷
Player Photo

The profile photo pulled from your player profile, used for identity verification on the card.

How to get a registration card

Registration cards are issued by an organizer or organization administrator — you cannot generate one yourself. When an organization admin registers you in the system, your card becomes visible in your Player Profile under My Registration Cards. If you are registered in multiple organizations, you will have a separate card for each one.

🖌
Example — David's registration card

David's coach submits his registration to the local football association through the organization admin panel in 4league. A few hours later, David opens his player profile and sees a new Registration Card notification. His card shows: Registration #2024-1234, Season 2024–2025, Medical Clearance: Valid until December 2025, and his player photo. He can share a PDF of the card directly from the app when required for official match day documentation.

ℹ️
Note

Registration cards are linked to your organization registration, not just your team. If you transfer to another team within the same organization, your existing registration number may carry over. If you move to a club in a different organization, a new registration process is required.

Player Navigation Tabs

When you are signed in as a Player, the bottom navigation bar of the mobile app gives you direct access to the five screens you use most often. The tabs are configured in Manager/navigation/BottomTabNavigatorForPlayer.js.

# Tab Icon Opens
1 My Profile account-outline Your Player Profile home — attributes, recent matches, badges
2 Matches soccer Your match list — past results and upcoming fixtures. Shows a badge count for unread match notifications.
3 Statistics chart-bar Your aggregated career statistics, with per-competition and per-season breakdowns
4 Messages message-text-outline In-app messages from Team Managers, organizers, and the system. Shows a badge count for unread messages.
5 More dots-horizontal Account settings, language, packages, privacy, and the full menu of secondary screens
💡
Notification badges

The Matches and Messages tabs (and the More tab for account-level alerts) display a coloured count badge when there is pending activity for you — for example, a newly added fixture, an unread message from a coach, or a connection request. Tap the tab to clear the badge once you have reviewed the items.