Seven platforms, one source of truth.
Mashal connects directly to the official API of every platform you publish on. Read-only by design — Mashal can see your numbers, but never your password, your messages, or your drafts. Disconnect from Settings at any time.
How the connection works.
You click Connect on a platform tile in Settings. The platform opens its own login page, you approve a read-only scope, and you're back on Mashal a few seconds later. We never see your password. We never store an access token your browser hasn't been told to give us. Every sync runs nightly against the same API any approved third-party app would use.
Read-only OAuth.
Every connection is scoped to "read insights." Mashal can fetch your posts and your numbers; it cannot publish, edit, comment, or delete anything. Posting tools live in your scheduler.
No password sharing.
The login happens on the platform's own page. Your password never touches Mashal's servers or any third party we work with. The token we receive is revocable from the platform's settings at any time.
Disconnect in one click.
Open Settings → Connected Accounts → Disconnect. The token is revoked, the historical data we've pulled stays in your workspace until you delete it, and no future sync runs against that account.
What we fetch from each platform.
Each platform exposes a different shape of data through its API. Below is exactly what arrives in your workspace from each one, what gets surfaced in your daily brief, and the tier where it unlocks. Anything not listed isn't pulled. Anything that requires a business account or a specific entitlement is called out on the platform's tile.
- Per post: caption, post type, reach, impressions, likes, comments, saves, shares, profile visits, posted-at timestamp.
- Reels: plays, average watch time, accounts engaged, sticker taps when present.
- Stories: impressions, exits, replies, sticker interactions for the last 24 hours of active stories.
- Account level: follower count, follower growth, total reach last 30 days, top-performing post.
- Audience demographics (Brand+): age, gender, country, city, language breakdowns from your followers. Refreshed daily. Smaller accounts (under 100 followers) won't see data; that's a platform limit.
TikTok
All plans- Per video: caption, video duration, plays, likes, comments, shares, saves, average watch time, average percentage watched.
- Account level: follower count, total likes, following count, video count, recent posting cadence.
- Captions read in any language — Mashal handles Arabic, Urdu, Hindi, Indonesian, Portuguese, Spanish, French, Turkish, English natively, plus the workspace-language preference for any reading the brief generates.
- Hashtag co-occurrence: which hashtags travel with your top posts. Surfaced in the brief when a pattern emerges.
YouTube
All plans- Per video: title, description, duration, views, watch-time minutes, average view duration, likes, comments, click-through rate where the platform exposes it.
- Shorts: same engagement set as long-form, plus the Shorts feed counter when available.
- Channel level: subscriber count, subscriber growth, video count, channel-wide watch-time, upload cadence.
- Direct integration via Google's official Data API. No third-party scraping layer between Mashal and your channel.
- Per post: text content, post type (article, document, video, image), impressions, unique impressions, clicks, likes, comments, reposts, follows generated.
- Comment threading: top-level comments are pulled with their reaction counts so the brief can flag a thread that's gaining traction independent of the post itself.
- Page or profile level: follower count, follower growth, demographic breakdown of followers (industry, seniority, geography) where LinkedIn exposes it.
- Both surfaces: Mashal connects to LinkedIn Company Pages and to personal-brand Creator content; the same fetcher handles both with the appropriate scope.
- Per post: message, attachment type, organic reach, paid reach when present, impressions, reactions broken down by type, comments, shares, link clicks.
- Video posts: minutes viewed, average watch time, completion rate, audience retention curve when the page is eligible.
- Page level: follower count, page likes, page-level reach, follower demographics for Brand+ workspaces.
- Cross-platform merge: when a post is cross-published to Instagram from a Facebook Page, Mashal merges the two performance records so the brief reports one number rather than two halves.
X (Twitter)
Brand & Agency- Per post: content, post type (post, reply, quote), impressions, engagements, profile visits, link clicks, detail expands, video views when present.
- Engagement rate: calculated against the impressions number X exposes through the official Insights endpoint, so the rate matches what you'd see in your own X analytics dashboard.
- Account level: follower count, follower growth, listed count.
- Window: Mashal pulls the last 30 days every sync. X's API doesn't expose a longer history through the read scope we use, so the first sync is also a 30-day backfill.
Snapchat
Brand & Agency- Per story: snap views, completion rate, story exits, screenshots taken, swipe-ups when present, story length in seconds.
- Per snap: total views, unique viewers, average view time, taps forward and backward.
- Audience demographics: age, gender, country, region breakdowns. Snapchat exposes richer audience signal than most platforms here, which is why we surface it prominently for workspaces in the GCC and Egypt where Snap remains a primary discovery channel.
- Lens and filter performance when your account is set up for them. Brand workspaces with sponsored lens campaigns can see views, shares, and play time alongside organic story data in a single view.
Competitor tracking.
Mashal runs the same analysis on up to 50 competitor handles per workspace (the limit depends on your tier). Competitor data comes from each platform's public profile and post surfaces — no authorization needed from the competitor, no DM-style access, only what anyone could see by visiting the public profile. We refresh competitor data nightly so the brief always has a fresh comparison.
On Brand and Agency plans we additionally pull Meta's Ad Library for any Facebook or Instagram competitor you track. The Ad Library is a public catalogue of every paid Meta ad currently running. Mashal surfaces each competitor's live creative — headlines, calls to action, creative type, start date, regions served — in your Intel screen so you can see what they're spending money to push without a separate ad-intelligence tool.
What we deliberately don't fetch.
A short, honest list. If a category isn't here and isn't in the per-platform sections above, assume Mashal doesn't touch it.
- Your direct messages. Mashal can't read your DMs on any platform, ever. The OAuth scopes we request don't include them.
- Your inbox, replies queue, or comment moderation. The same scope rule applies; mod tools live in your scheduler or in each platform's own studio.
- Your drafts and scheduled posts. We see published posts only. Anything sitting in a draft state on the platform is invisible to us.
- Other people's accounts you don't own. Competitor tracking reads what's already public. We don't request OAuth on accounts that aren't yours.
- Anything we'd need to write back. Mashal cannot post, reply, comment, like, follow, unfollow, edit, or delete on your behalf. Publishing belongs to your publishing tool.
Authorise an account, get your first brief by 6 AM tomorrow.
The first connection takes under 90 seconds. The first brief arrives the morning after you connect, in your workspace's local timezone.
Start free trial