Checking your access…
🔒 Admin access only
This area is for the platform owner. If you believe you should have access, contact the site administrator.
Owner control room
Manage the daily News & Updates block users see first, watch analytics for every creator, and moderate accounts and music — all in one place.
Dashboard news & updates
This is the block every signed-in user sees first on their dashboard. Edit the text and embed a video or image — changes go live immediately.
Live preview
Most-played music
The hit counter across every creator's songs and beats.
| # | Title | Creator | Type | Plays | Listeners |
|---|---|---|---|---|---|
| Loading… | |||||
Creators
Every account with its music, plays and reach.
| Creator | Plan | Songs | Beats | Plays | Listeners | Views | Followers |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Accounts
Suspend an account to lock it out of the app, restore it, or change its plan.
| Creator | Plan | Status | Plays | Actions |
|---|---|---|---|---|
| Loading… | ||||
Music
Hide a production to pull it from the station / community surfaces.
| Title | Creator | Type | Plays | Status | Actions |
|---|---|---|---|---|---|
| Loading… | |||||
Activity log
A record of every moderation action taken from this panel.
- Loading…
Promo codes
Each code unlocks a free 90-day Pro trial when redeemed on the account page. Activate or deactivate any code at any time — deactivating instantly blocks new redemptions (trials already running keep going until they expire).
| Code | Status | Redemptions | Created | Actions |
|---|---|---|---|---|
| Loading… | ||||
Active trials
Every free-Pro trial granted by a promo code, newest first.
| User | Code | Plan | Expires | Status |
|---|---|---|---|---|
| Loading… | ||||
Pending submissions
Every song a creator submits to AVH Radio waits here until you approve it. Only approved complete songs play on the station — instrumentals and beats are rejected automatically.
| Song | Artist | Genre | Creator | Submitted | Actions |
|---|---|---|---|---|---|
| Loading… | |||||
On the station
Songs currently in the AVH Radio rotation, newest first. Rejecting one pulls it off the station immediately.
| Song | Artist | Genre | Status | Plays | Likes | Actions |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Paid placements — review queue
Every paid radio post waits here until you approve it. Approving starts the 30-day lease (guaranteed daily spins); rejecting refunds the poster in full.
| Song | Genre | Creator | Paid | Posted | Actions |
|---|---|---|---|---|---|
| Loading… | |||||
Placement demand board
The live price + fill for every genre rotation. The price rises with demand and falls when the rotation is quiet (floor 50 AIVH).
Guarantee health
Active paid placements, soonest to end first. “Behind” means the song has not had a spin in over 24 hours — check the scheduler.
| Song | Genre | Creator | Spins | Ends | Guarantee |
|---|---|---|---|---|---|
| Loading… | |||||
Payout requests
Fiat earnings from song and beat sales. Creators can request a payout once their available balance reaches the unlock threshold. Send the money to the card on file, then mark it paid.
| Creator | Amount | Payout to | Requested | Actions |
|---|---|---|---|---|
| Loading… | ||||
Payout history
Settled payouts — paid or rejected — newest first.
| Creator | Amount | Status | Processed | Note |
|---|---|---|---|---|
| Loading… | ||||
Faucet vs sink
The faucet is every AIVH the platform mints (activity rewards, milestone payouts, gift refunds, contest/beat payouts). The sink is every AIVH it burns (spending on beats, contest entries, featured bids, gifts, the house cut). A healthy economy keeps the faucet near or below the sink — if the faucet outruns the sink for a full week, tighten the guardrails below.
How to tune the faucet
The reward engine is config-driven. Everything below takes effect on the very next reward — no redeploy, no file edit. Work through it in this order:
- Watch the weekly faucet/sink ratio. If the faucet is consistently above the sink, the economy is inflating — tighten the guardrails below.
- Raise the minimum account age (e.g. to 24 hours) at launch. This blunts signup-farming: a fresh account can't cash out a burst of rewards before you notice it.
- Lower the daily earning ceiling if the faucet still outruns the sink. It caps how much one account can earn per day, no matter how many actions it spreads across.
- Watch the review queue. It's the backstop. If it grows, either the review threshold is too low or a payout is being gamed — investigate before approving.
- Minter not configured? In dev, awards are still recorded (the intent is durable) but not settled on-chain — set the token-minter key to settle for real.
Guardrails
The anti-abuse limits. These are the first knobs to turn when the faucet runs hot.
Activity rewards (per action)
What each action pays and its daily cap. Amounts are whole AIVH. The Default column shows the shipped value so you can see what you've changed.
| Action | AIVH each | Daily cap | Default |
|---|---|---|---|
| Loading… | |||
Milestones & performance rewards
One-time payouts for lifetime progress and real audience performance. Edit the AIVH amount to tune; the threshold stays fixed so the milestones stay honest.
| Milestone | Metric | Threshold | AIVH | Default |
|---|---|---|---|---|
| Loading… | ||||
Review queue
Large or suspicious payouts land here instead of auto-crediting. This is the backstop: if it grows, either the thresholds are too low or a payout is being gamed — investigate before approving.
| Creator | Milestone | AIVH | Reason | When | |
|---|---|---|---|---|---|
| Loading… | |||||
Machine error log
Every failure the engine reports — voice training & conversion, stem splits, re-perform, mastering, likeness and any unhandled crash. Newest first. Click a row to see the full message and stack trace so you can jump straight to the code that needs fixing. Identical errors seen within a minute are folded together (the count column).
| When | Source | Count | Message |
|---|---|---|---|
| Loading… | |||
Fidelity gate review
Every re-performance is compared against the ORIGINAL by the fidelity gate (rp_verify.py). A FAIL — the result no longer sounds like the source — is recorded here so you can correct the cause before it reaches a listener. The Direct AI Vocal Humanization path gates three times (vocal → instrumental → master); each failed stage is its own row. Resolve a row once you've confirmed the cause.
| When | Stage | Verdict | Score | Failed checks | Reason | |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Create a contest
The Hitfinders runs monthly. Pick 1–3 genres, set the $3 entry donation and the winner's share, then open entries when you're ready. Every contest starts as a draft — nothing is public until you open it.
All contests
| Contest | Genres | Status | Entries | Pool | Winner | Judges | |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Contest detail
Live show
Start the show to go live for viewers. Reveal ranks bottom-up so the winner lands last.
Judges camera
Green room is judges-only. Go public when the reveal show starts — the feed appears beside the leaderboard on the live page.
Judges
| Judge | Handle | Added | |
|---|---|---|---|
| No judges appointed yet. | |||
Entries
| Entry | Artist | Genre | Status | Donation | Submitted | |
|---|---|---|---|---|---|---|
| Open a contest to see its entries. | ||||||
Settlement & payouts
Finalize the contest to publish the settlement receipt and release the winner's payout. The winner takes 75% of the gross pool; the house absorbs card processing fees. A prize of $600 or more is held until the winner files a W-9.
Interest & funnel
Open a contest to see how many people viewed it, started an entry, completed one, shared it, and watched the live show.
Voice worker keep-warm
The RVC voice engine runs on a Runpod serverless endpoint that scales idle endpoints down: after 3 days with no requests its max workers drops to 2, and after 7 days it drops to 0 — voice training & conversion stop working until you raise it again in the Runpod console. The keep-warm heartbeat pings the worker on a schedule well under those windows so it never goes idle long enough to be scaled down. Each ping holds a GPU worker for the idle-timeout window (~10 min), so keep the interval comfortably under 7 days but not so short that it wastes money.
Alerts
Raised when the endpoint is reduced or scaled down, or when the keep-warm ping keeps failing. Newest first. Alerts are also emailed to the owner (when an email provider is configured) and mirrored to the Error log tab.
| When | Level | Kind | Message |
|---|---|---|---|
| Loading… | |||
Recent keep-warm pings
Each ping is a GET /health to the worker — it wakes a worker (a cold start if it had scaled to zero) and resets Runpod's idle timer.
| When | Result | HTTP | Latency | Error |
|---|---|---|---|---|
| Loading… | ||||
Video worker keep-warm
The LTX video engine runs on a persistent GPU pod, not a serverless endpoint. That is the key difference from the voice worker: a persistent pod is billed from the moment it is created and it does not scale to zero on its own — if you leave it running it bills every hour, and if you stop it the next render pays a cold start (a fresh boot plus a re-read of the model weights). This panel is the middle path: the heartbeat keeps the pod alive while you are working, the idle timer puts it to sleep when nothing has rendered for a while, and a hard daily budget cap stops it no matter what. So you no longer have to shut the pod down by hand between sessions — it sleeps when idle and wakes on demand.
Alerts
Raised when the pod is unreachable, when the heartbeat keeps failing, when the daily budget cap is hit, or when the pod is put to sleep. Newest first. Alerts are also emailed to the owner (when an email provider is configured) and mirrored to the Error log tab.
| When | Level | Kind | Message |
|---|---|---|---|
| Loading… | |||
Recent heartbeats
Each heartbeat is a GET /health to the worker on the pod — it confirms the pod is awake and the render service is answering, and it resets the idle timer.
| When | Result | HTTP | Latency | Error |
|---|---|---|---|---|
| Loading… | ||||