How VocalHub works
Everything from posting your first take to cashing out your first month of fan subscriptions. No fluff — just what you do, what to tap, and what happens next.
Getting started
Three minutes to a working account.
- 1
Create an account
Tap Sign up in the top-right corner of the landing page. Email + password, no SMS code, no credit card.
- 2
Set your handle and bio
Go to Settings in the sidebar. Pick a username (it's how friends find you, like
@yourname), add a one-line bio, choose your voice type or instrument tags. These show on your profile. - 3
Install the app
On your phone browser, tap Add to Home Screen (iPhone Safari) or use the Install menu (Android Chrome). VocalHub now lives like any other app — opens full-screen, gets a lock-screen icon, no browser chrome. Detail in the Installing section below.
Installing on your phone
Same site, but it behaves like a real app.
VocalHub is a Progressive Web App (PWA). You don't download it from Play Store or App Store — you install it directly from the site. Saves storage, no review delays, updates are instant.
Android (Chrome / Edge)
Open VocalHub in Chrome → menu (three dots) → Install app. The icon lands on your home screen. Tap it from now on. Notifications work even when the app is closed.
iPhone (Safari)
Open VocalHub in Safari → tap the Share button → Add to Home Screen. Open VocalHub from the home-screen icon, NOT from Safari. iOS only allows notifications when launched this way (Apple's rule).
Desktop (Chrome / Edge)
Address bar shows a small install icon — click it. VocalHub opens in its own window without tabs. Same notifications, quicker keyboard shortcuts.
Your profile
What other people see when they tap your name.
From Settings you can set your display name, username, bio, voice type (soprano / tenor / etc.), and a list of instruments you play. Avatar uploads are auto-compressed before they reach our servers, so a 4 MB phone selfie shrinks to ~300 KB without you doing anything.
Your profile (/dashboard/u/<username>) shows your posts, your harambee jars, your subscription tier if you've published one, and a Subscribe button when fans visit your page.
The feed
Vertical short-form, like TikTok. Built for voice.
The Feed is your home base. Each post fills the screen one at a time, autoplays, pauses when you scroll past. Tap to play / pause, tap the speaker icon to unmute, swipe up for the next post.
React
Tap the heart on the right rail to like. The number updates live for everyone watching.
Comment
Tap the speech bubble to leave a comment. The author gets notified.
Save
Tap the bookmark to save a post. It shows up under Saved on your own profile.
Download
Tap the download icon. Videos come with the VocalHub watermark + your handle baked in — when you share the file on WhatsApp, viewers know where it came from.
Tip
Tap the dollar icon to send a tip via M-Pesa or card. Goes straight to the creator's bank account.
Share
Tap the arrow to copy a link to the post. Anyone with the link can view it (unless it's subscriber-only — they'll see a paywall).
At the bottom-center, the round + button opens the create menu: Go live, Photo, Video, Audio.
Making a post
Photo, video, or audio. Optionally subscriber-only.
- 1
Choose a kind
From the feed's + button, pick Photo (up to 10 MB) or Video (up to 50 MB / 60 seconds). Audio uses a separate flow — see Recording audio.
- 2
Drop or pick a file
Tap the upload box and choose the file. Photos auto-compress before upload to save your data. Videos longer than 8 MB run through an in-browser compressor that brings most phone clips down to about a fifth their size — same quality on a phone screen.
- 3
Add a title and caption
Both optional. The title shows under the video; the caption appears below the author block. Captions support line breaks, up to 500 characters.
- 4
(Optional) Make it subscriber-only
Flip the Subscribers only toggle near the bottom of the form. Only fans who pay your monthly tier will see the media — everyone else sees a paywall card asking them to subscribe.
- 5
Hit Post
Compression happens, upload runs with a progress bar, you land on the post detail page once it's live.
Recording audio
One-take voice notes from the browser.
The dedicated audio recorder lives at /dashboard/record (or pick Record audio from the create menu). Tap Start recording, do your thing, tap Stop. Caps at 15 minutes.
Before posting you'll see a playback preview. If it sounds off,Re-record wipes and restarts. Save uploads to Cloudinary and creates the post.
Going live
Performance rooms — your stage, your audience, your tip jar.
Tap Live in the sidebar to see who's broadcasting right now. Tap into any active room to listen. To host your own:
- 1
Host a room
On the Live page, tap Host a room. Give it a title, optional topic. If you want to charge for entry, flip the Charge ticket toggle and set a price (KES 50 minimum). See Ticketed rooms.
- 2
Take the stage
The room opens in the lobby. Tap Take the stage — you go live automatically and audience members can drop in.
- 3
Music mode (optional)
Toggle Music mode on the bottom bar before you sing. It disables noise suppression and goes stereo so vocals and instruments don't get destroyed by aggressive noise filters.
- 4
End the room
Tap the red End room in the top-right when you're done.
While the room is live the audience can react with emojis (the bottom bar's emoji strip), tip the host directly, request specific songs (see Song requests), and contribute to your harambee jars.
Ticketed live rooms
Charge for entry. Like a paid show, run from your phone.
When you set a ticket price on a room, audience members hit a paywall in the lobby. Tap Buy ticket · KSh 200 (or whatever you priced) → Paystack hosted checkout → M-Pesa or card → ticket recorded → they can join the room.
The host always gets in free. Broadcasters you've explicitly promoted also bypass the paywall. Everyone else needs a paid ticket. We keep 10% as a platform fee, the rest settles to your connected bank within 1–2 working days.
Song requests
Fans pay to request a song. You decide what to play.
During a live, fans can tap the Request button next to the tip button. They type the song title, pick an amount, and pay via Paystack. The request appears in your queue at the top of the stage.
You can Accept, Decline, or Mark as played. Decline does not auto-refund — you listened to the request, that's worth something. The fan sees the status update in real time.
Harambee jars
Named goals on your profile. Replaces 'send a tip' with something concrete.
From Settings → Harambee jars you can publish jars like "Studio time", "New mic", "Bus fare to the gig". Each has a goal in KES and a public progress bar.
Fans contribute toward specific jars from your profile and from inside your live performance rooms. Once a goal is hit the jar auto-closes with a "hit" badge and you get a prompt to record a thank-you note attributed to the contributors.
Fewer abstract tips, more concrete moments — the cultural fit for "harambee" energy.
Fan subscriptions
Recurring monthly support. Unlocks subscriber-only posts.
Set a monthly tier from Settings → Fan subscriptions: name (e.g. "Inner circle"), monthly price in KES, optional description. Once published, your profile shows a Subscribe button next to Follow.
When a fan subscribes, they pay through Paystack each month (auto-renewing card) and get access to all your subscriber-only posts. They can cancel any time; access stays until the end of the current period.
Your dashboard shows active subscribers, MRR (monthly recurring revenue), and recent subscription charges in the earnings page alongside tips and ticket sales.
Friends and direct messages
The chat layer of the app.
The Friends page in the sidebar has three tabs: your accepted friends, pending requests (incoming + outgoing), and a search-and-add panel. Add anyone by username; they get a friend request to accept.
Direct messages live under Conversations in the sidebar (or open one from any profile via the Message button). DMs support emojis, file attachments, threaded replies, and:
Read receipts
Single grey check = sent. Double grey = peer is online. Double blue = peer has read it.
Typing / recording
You see "X is typing…" or "X is recording a voice note…" in real time, with different colors so you can tell which state.
Push notifications
Closed-app DMs ring with a buzz on Android (PWA-installed iPhones too). Tap the notification to open the conversation directly.
Voice and video calls
One-on-one calls with anyone in your contacts.
From any DM, tap the phone or camera icon at the top to call. The recipient gets a ring on every device they have logged in, plus a phone-style heads-up notification with Answer and Decline buttons (Android Chrome / installed PWAs).
Voice calls
Centered avatar with a pulsing brand halo while the phone rings. Bottom controls: mute, leave, speaker, copy-link. When the peer joins, the halo fades and "Connected" turns green.
Video calls
Full-screen video grid. Bottom controls for mic, camera, leave. Screen share is hidden on phones (small tile, not useful) but available on desktop.
The big red Leave button at the bottom-center is the universal exit — it's always visible and always works.
Notifications
Get a buzz when something happens, even if VocalHub is closed.
Go to Settings → Notify anywhere and tap Turn on. Allow the browser permission prompt. That registers your device with our notification service.
From then on you'll get pushes for: incoming calls, new direct messages from your friends, and tips received on your posts. On Android the notification appears as a heads-up banner with tappable buttons. On iPhone (only when VocalHub is installed as a PWA) it appears on the lock screen.
If you change your mind: Turn off on this device from the same settings card. Notifications are per-device, so you can enable on your phone and not your laptop, or vice versa.
Earning money
Tips, tickets, subscriptions, jars — paid to your bank within ~2 days.
First step: go to Settings → Earn money and connect a bank account (or M-Pesa via your bank). Pick your bank, enter the account number, we resolve it with Paystack and confirm the holder name. After that you're set up to receive any of:
Tips on posts and lives
Audience taps the $ icon. They pay via Paystack checkout. Money lands in your bank.
Ticket sales
Audience members pay to enter your ticketed rooms.
Fan subscriptions
Recurring monthly charges from your subscribers.
Harambee jar contributions
Fans drop into your named goals.
Song requests
Fans pay to request specific songs during your lives.
We keep 10% as a platform fee, Paystack takes their ~1.5% transaction fee, the rest is yours. Settlement to the bank is 1–2 working days from Paystack's cutoff (Kenya cutoff ~14:00 EAT). Watch Paystack → Settlements for the live status.
Earnings dashboard
See what's coming in, when, and from who.
Activity in the sidebar takes you to your dashboard. Four tabs:
Overview
Hero card with all-time net earnings, this-week / last-week comparison, pending settlements, unique tippers. Top reactors strip showing the most engaged fans on your posts.
Watch history
Every post you've watched, in reverse-chronological order. Useful for finding "that thing I saw yesterday".
Analytics
Per-post numbers — likes, saves, comments, views — with a relative-views bar so you can spot which posts performed.
QR code
A scannable QR pointing to your profile URL. Print on business cards, posters, gig flyers.
Settings
Everything that's about your account, in one place.
Identity & avatar
Display name, username, bio, voice type, instruments.
Notify anywhere
Turn on / off Web Push notifications per device.
Earn money
Connect / update your bank account for payouts.
Fan subscriptions
Publish or update your monthly subscriber tier.
Harambee jars
Create, edit, archive your goal-based tip jars.
Theme
The little sun/moon button in the sidebar bottom flips between light cream and navy dark. Persists across sessions.
Troubleshooting
The questions we hear most.
My friend can't hear my call ringing.
Have them go to Settings → Notify anywhere and turn it on. On iPhone, they need to install VocalHub as a PWA first (Share → Add to Home Screen) — Apple only fires push notifications inside installed PWAs.
A tip shows as 'Failed · Insufficient Funds'. What does that mean?
The fan opened Paystack's checkout but their card or M-Pesa didn't have enough balance. The money never moved — nothing for you to recover. Failed attempts show in your earnings feed but don't add to your balance.
I tipped someone but they say they haven't received it.
Two things: (1) Paystack settles to the recipient's bank on a T+1 schedule from their cutoff. If you tipped after 14:00 EAT or on a weekend, the bank credit lands the next working day. (2) Their VocalHub earnings card may show 0 if the page is cached — pull-to-refresh or close and reopen the app.
A friend appears 'online' but my call won't go through.
"Online" reflects their account status, not whether they have an open VocalHub tab. If they don't have a tab open AND don't have notifications on, the call has nowhere to land. Tell them to install + enable notifications.
My video upload is slow / fails on flaky wifi.
Try a smaller / shorter clip. The upload-page compressor already shrinks most phone videos to about a fifth their size, but a 50 MB ceiling still applies. The compressor is a one-time 31 MB download per device — first upload is slow, subsequent ones are quick.
The PWA isn't picking up new features I just heard about.
PWAs cache the previous version aggressively. To force an update: close VocalHub fully (swipe out of recents), reopen, close again, reopen. The second reopen lets the new service worker activate. On desktop: hard reload (Cmd/Ctrl + Shift + R).