Fapstats App Tracking
Fapstats Bingo integrates with the Fapstats App to allow you to log your bingo session as an activity in your personal Fapstats account. This integration appears on the Session Statistics page after a game ends.
Overview
The tracking panel is displayed in the right column of the session statistics page inside a sticky card. Its behavior depends on whether you are logged in:
| State | Display |
|---|---|
| Not logged in | A login form + link to open the Fapstats App |
| Logged in | An activity creation form pre-filled with game data |
Authentication
Login Options
You can sign in using:
- Email & Password — Enter your Fapstats account email and password, then click "Sign In".
- OAuth Providers — Sign in with one click via:
- Discord
- X (Twitter)
The OAuth buttons are displayed below a separator line that reads "Or sign in with".
Technical Details
- Authentication is handled via Supabase Auth.
- OAuth sign-in redirects you to the provider's login page and then back to the session statistics page.
- After successful login, the login form is automatically replaced by the activity creation form.
- A "Change Account" button appears in the card header when logged in. Clicking it signs you out, allowing you to log in with a different account.
Open Fapstats App
If you prefer not to log in directly, a button labeled "Open Fapstats App" links to app.fapstats.com in a new tab (shown when not logged in).
Activity Creation Form
Once logged in, a form appears to log your bingo session as an activity in the Fapstats App. The form comes pre-filled with sensible defaults based on your game session.
Form Fields
Date of Activity
- Type: Date picker
- Default: Today's date
- Format: YYYY-MM-DD
Time of Day
- Type: Dropdown select
- Options: Morning, Afternoon, Evening, Night
- Default: Automatically determined based on the current hour:
| Current Hour | Auto-selected Time |
|---|---|
| 00:00 – 05:59 | Night |
| 06:00 – 11:59 | Morning |
| 12:00 – 17:59 | Afternoon |
| 18:00 – 23:59 | Evening |
Type of Activity
- Type: Dropdown select
- Options: Sex, Masturbation
- Default: Masturbation
Rating
- Type: Star rating (1–5 stars)
- Default: 5 stars
- Interaction: Click on any star to set the rating. Stars to the left of the clicked star are also highlighted (yellow). Unselected stars are gray.
Duration
- Type: Two numeric inputs (Hours and Minutes)
- Hours range: 0 – 23
- Minutes range: 0 – 59
- Default: 0 hours, 0 minutes
The duration is not auto-filled from the game timer. You can manually enter how long your overall session lasted (which may be longer than just the bingo game).
Partners
- Type: Multi-select dropdown
- Shown only when: Activity type is "Sex"
- Options: Loaded from your Fapstats App account via a Supabase RPC call (
get_select_items) - Default: If you have exactly one active partner, they are pre-selected
- Note: Data loads asynchronously — the dropdown is disabled with a loading indicator while data is being fetched
Toys
- Type: Multi-select dropdown
- Options: Loaded from your Fapstats App account
- Default: None selected
- Note: You can select multiple toys that were used during the session
Tags
- Type: Multi-select dropdown
- Options: Loaded from your Fapstats App account
- Default: None selected
- Note: Tags help you categorize and filter activities later in the Fapstats App
Locations
- Type: Multi-select dropdown
- Options: Loaded from your Fapstats App account
- Default: None selected
Self Orgasms
- Type: Numeric input
- Range: 0 – 99
- Default: 0
Partner Orgasms
- Type: Numeric input (one per selected partner)
- Shown only when: Activity type is "Sex" AND at least one partner is selected
- Range: 0 – 99 per partner
- Default: 0
- Label: "Orgasms for [Partner Name]"
Notes
- Type: Auto-resizing textarea
- Default: Pre-filled with a summary of your bingo session (see below)
Auto-Generated Notes
The notes field is automatically populated with a summary of your bingo game stats. The text updates reactively as data changes. The format is:
Activity created with Fapstats Bingo
https://bingo.fapstats.com
- Ball Slaps: [total slap count]
- Edges: [total edge count]
- Cock Ring: [total count] (Balls: [count], Penis: [count])
- Butt Plug: [size]
- Ball Gag: Yes
- Nipple Clamps: Yes
Only lines for items that were actually drawn during the game are included. If no balls were drawn, a single line reads: "No balls drawn yet".
You can freely edit the notes text before submitting. The auto-generated content is just a convenient starting point.
Submitting the Activity
Click the "Create Activity" button to submit the activity to the Fapstats App.
What Gets Created
The following data is sent to the Fapstats database:
- Activity record — Date, time of day, type, rating, duration, self orgasms, notes, and your user ID.
- Partner associations (if applicable) — Each selected partner is linked to the activity with their orgasm count.
- Toy associations — Each selected toy is linked to the activity.
- Tag associations — Each selected tag is linked to the activity.
- Location associations — Each selected location is linked to the activity.
Success State
After successful creation:
- The form is replaced with a success screen showing:
- A Fapstats verified badge image
- The message: "Activity successfully created"
- A button to "Open Fapstats App" in a new tab to view your newly created activity
Error Handling
- If you are not logged in when trying to submit, an error message "Not logged in" appears.
- If the database insert fails, the error message from Supabase is displayed below the form.
- The form remains editable so you can try again.
Data Loading
When the activity form mounts, it fetches your personal data from the Fapstats App via a Supabase RPC call:
- Partners — Your partner list
- Toys — Your toy collection
- Tags — Your custom tags
- Locations — Your saved locations
During loading:
- All multi-select dropdowns are disabled with a loading indicator.
- Once data is loaded, the dropdowns become interactive.
- If the RPC call fails, an error message is shown.