Case Study: Postlyy – How We Built Our Own Social Media Management SaaS for 13 Platforms
How WEB3 Build Studio engineered Postlyy, an owned social media management SaaS with 13 platform adapters, background workers, AI assists, and crypto billing.
The Problem with Fragmented Social Scheduling Tools
Managing multi-platform distribution across agencies, SaaS companies, and digital brands reveals severe structural friction in commercial software. Most off-the-shelf social media management platforms structure their business models around arbitrary constraints: strict caps on connected profiles, aggressive per-seat pricing, and fragmented channel coverage.
Operational Bottlenecks in Commercial Schedulers
Teams managing multi-brand distribution pipelines regularly hit three persistent operational barriers:
- Escalating cost tiers: Mainstream platforms penalize portfolio growth. Adding team members or scaling past ten accounts often triggers enterprise pricing tiers, imposing steep monthly software overhead on lean teams and agencies.
- Brittle API handling: Opaque token invalidations, silent delivery drops, and unhandled rate limits disrupt publishing pipelines. Most tools fail to return clear error diagnostics, leaving teams to discover failed scheduled posts manually.
- Missing modern channels: Mainstream schedulers focus on legacy platforms and routinely omit networks central to modern tech communities, particularly Telegram. Teams must manage Telegram channels and groups through standalone bots or direct manual posting, splintering their operations across disconnected windows.
Market Size and Research Divergence
Demand for social management infrastructure continues to expand, though analyst valuations vary based on methodology and product boundaries:
| Research Source | 2025 Market Valuation | Projected Trajectory | Scope Criteria |
|---|---|---|---|
| The Business Research Company | ~$28.58 billion | 17.1% CAGR | Broad definition including enterprise social listening, PR distribution, and CRM suites |
| DIResearch | ~$6.52 billion | ~$19.09 billion by 2032 | Focused definition limited to standalone publishing, social scheduling, and engagement software |
As documented by The Business Research Company, broader industry definitions capture adjacent customer care and listening modules. Conversely, the market study by DIResearch reflects a tighter scope centered specifically on day-to-day scheduling and workflow tooling.
Engineering an In-House Solution: Postlyy
To eliminate recurring per-seat fees, solve channel fragmentation, and introduce native Telegram publishing, WEB3 Build Studio engineered Postlyy (postlyy.xyz). Developed as our own SaaS product, Postlyy unifies multi-network scheduling, unified inbox monitoring, analytics reporting, and guardrailed AI assistance into a single centralized workspace.
Postlyy Architecture: One Container, PostgreSQL, and Clean Node.js
When engineering Postlyy (postlyy.xyz), we prioritized operational simplicity over microservice complexity. The entire application runs inside a single Docker container based on node:22-alpine, running TypeScript directly on Node.js (version 22.18 or higher). This single process serves the public landing page, the /app/ client interface, the /api/ REST endpoints, and /media/ uploads.

Lean Production Footprint
Avoiding dependency bloat keeps maintenance predictable and deployment fast. The server codebase contains approximately 11,900 lines of server code, tested across 37 test files, with schema changes managed through 27 versioned SQL migrations.
Rather than stacking unnecessary framework layers, the production runtime relies on just three external libraries:
| Dependency | Role in Runtime |
|---|---|
postgres | Direct, connection-pooled PostgreSQL queries |
sharp | Fast media transformation and JPEG standardization |
telegram (GramJS) | MTProto client handling Telegram user account sessions |
Deployment, Hardening, and Backups
Postlyy is deployed using Coolify on dedicated server infrastructure. Operational security and disaster recovery are engineered directly into the setup:
- Access Security: User sessions support two-factor authentication (2FA), an optional site lock for private instances, and optional Cloudflare Turnstile integration to mitigate automated abuse.
- Encrypted Storage: All connected social platform credentials, API secrets, and MTProto sessions are stored encrypted in PostgreSQL.
- Automated Backups: Daily database backups retain rolling 7-day snapshots locally, with optional off-site synchronization to S3-compatible object storage.
- Disaster Recovery: A dedicated restore script and native health check endpoints allow fast environment rebuilds if a host fails.
Frictionless Demo Mode
Evaluating a social media management SaaS typically requires creating an account and immediately linking social channels. To demonstrate functionality without friction, Postlyy includes an unauthenticated live demo mode.
When visitors load the workspace without an active session, the application serves a populated sandbox state with pre-seeded calendar entries, queue items, and metrics. This lets prospective users inspect the interface and workflow directly without initial account creation.
Integrating 13 Platforms with Single-Purpose Adapters
Every social network handles payloads, authentication lifetimes, and media specifications differently. Rather than scattering conditionals throughout the core worker queues, Postlyy isolates all platform-specific logic inside dedicated, single-purpose adapter modules written in TypeScript.
interface SocialPlatformAdapter {
readonly platformId: string;
validatePayload(payload: PostPayload): ValidationResult;
publish(account: ConnectedAccount, payload: PreparedMedia): Promise<PublishResult>;
syncInbox?(account: ConnectedAccount, since: Date): Promise<InboxBatch>;
fetchMetrics?(account: ConnectedAccount, externalId: string): Promise<PostMetrics>;
}
The engine includes adapter definitions for 13 distinct networks: Instagram, Facebook Pages, Telegram, LinkedIn (personal profiles), X, Reddit, Threads, Bluesky, Mastodon, YouTube, Pinterest, Google Business Profile, and TikTok.

Platform Readiness and API Limitations
Production reliability requires total clarity regarding third-party developer requirements and access tiers:
- Fully Live Adapters: The first six platforms—Instagram, Facebook Pages, Telegram, LinkedIn, X, and Reddit—are active in Postlyy.
- Meta Development Mode: Instagram and Facebook Page integrations currently run in Meta's development mode. Connecting external client accounts in production environments requires passing Meta App Review.
- Google Business Profile: This adapter requires verified Google API access and project quota approvals before accepting production traffic.
- Reddit Tier Limits: The Reddit adapter operates strictly within Reddit's non-commercial API tier terms.
We never claim that all 13 platforms are fully approved or universally active; connectors remain gated until platform audits and permissions are finalized.
Native Telegram Execution via MTProto
Standard schedulers interact with Telegram exclusively through basic bot webhooks. Postlyy implements a dual architecture, supporting both standard bot tokens and direct user accounts via MTProto using GramJS (telegram).
Operating a native user session allows interactions that standard bots cannot perform, but it introduces distinct operational challenges:
- Proxy Isolation per Session: Each active MTProto account session routes through an isolated IP address assigned from an admin proxy pool, preventing IP collisions and network-level throttling.
- Encrypted Session Persistence: Authentication keys and string sessions are encrypted before storage in the PostgreSQL database to ensure safety against static database exposure.
- Direct Engagement Extraction: By communicating directly over MTProto, the adapter extracts real message view counts, forward tallies, and emoji reaction breakdowns directly from monitored channels.
Publishing Engine, Media Optimization, and Resilient Workers
Timezone-Aware Queues and Slot Mapping
Postlyy structures content delivery around workspace-specific schedules rather than raw cron timers. Each workspace configures recurring weekly posting slots calibrated to its primary audience timezone.
When an operator clicks "Add to Queue", the system scans the workspace's active time slots, locates the next unoccupied programmatic window, and reserves it. If an urgent post requires immediate release or a custom timestamp, operators can bypass the queue entirely.

Automated Media Normalization: Sharp and FFmpeg
Different social networks impose conflicting media dimensions, encodings, and container restrictions. Rather than pushing raw client uploads directly to upstream APIs, Postlyy routes every asset through a deterministic ingestion pipeline:
- Static Images: Processed with
sharpto strip incompatible color profiles, resize when necessary, and output normalized baseline JPEGs. - Video Files: Transcoded via
ffmpeginto standardized MP4 containers using the H.264 video codec and AAC audio encoding. - Storage Architecture: Converted binary payloads and their metadata are written directly into PostgreSQL, keeping media storage unified within the database layer.
Worker Fault Tolerance and Failure Alerts
A lightweight background worker processes ready jobs from the database queue. Platform delivery failures are handled with defensive execution rules:
// Worker retry and status evaluation
if (!result.success) {
if (isAuthOrPermissionError(result.error)) {
await markAccountDisconnected(target.accountId, result.error.message);
await emitFailureAlert(workspace.id, target.platform, result.error.message);
} else if (job.attempts < 3) {
await scheduleRetry(job.id, job.attempts + 1);
} else {
await markJobFailed(job.id, result.error.message);
await emitFailureAlert(workspace.id, target.platform, result.error.message);
}
}
Up to three delivery attempts are made per target account. If an API returns an authorization or session lapse, the worker immediately classifies the account as disconnected, logs a descriptive failure reason, halts retries, and fires a real-time alert to workspace administrators.
Want a scheduler tailored to your agency or niche instead of renting one per seat? We build SaaS products like Postlyy — an MVP starts from $2,500 at WEB3 Build Studio.
Unified Inbox, Automations, and Guardrailed AI Assistance
Operating multiple accounts across disparate networks requires centralizing customer communication and mechanical distribution tasks without losing operational oversight. Postlyy handles this through a synchronized inbox, configurable background automations, and strictly bounded AI tooling.
Multi-Network Unified Inbox
The unified inbox synchronizes comments and direct messages across connected accounts on a 5-minute background polling loop. Inbound interactions surface in a single stream where team members can handle daily community management:
- Filter incoming conversations by network, connected profile, or read status.
- Assign specific conversations to workspace team members for triage.
- Submit inline replies directly to supported network APIs without switching browser tabs.

Smart Automations and Content Pipelines
To reduce repetitive manual scheduling, Postlyy provides four modular automation workflows:
- RSS-to-Social Pipelines: Monitors external RSS feeds and automatically parses new entries into queued drafts or scheduled posts.
- Recurring Schedules: Re-posts routine reminders, evergreen updates, or recurring announcements at fixed time slots.
- Automated Keyword Replies: Evaluates inbound comments and direct messages against configured keywords. Matches can either dispatch an automated reply immediately or stage a suggested response for manual approval.
- Top-Post Recycling: Evaluates historic post analytics to identify top-performing content and re-queues it into available queue slots.
Guardrailed AI Content Assistance
Postlyy integrates Anthropic's Claude via the Messages API to assist with copywriting, rephrasing, and message formatting. The platform applies strict network-level constraints directly to the generation layer:
| Network | Format Rule Enforced by AI Generation |
|---|---|
| X | Hard limit of 280 characters |
| Maximum length capped at 3,000 characters | |
| Telegram | Formatted for a 4,096-character payload limit |
| Generates a distinct title string alongside markdown body copy |
The foundational architectural rule across Postlyy is that AI suggests, but never publishes. Every generated output is delivered into the composer as a draft for human review and scheduling; no autonomous publishing path exists.

All AI text operations are metered by workspace plan tiers with per-request token logs stored in PostgreSQL. For visual assets, Postlyy provides integrated image and video generation through Higgsfield, fal.ai, and OpenAI GPT Image, deducted against each workspace's monthly allowance.
Workspaces, Client Approvals, and Analytics Reporting
Agencies and marketing teams require strict tenant isolation and structured sign-off procedures before any post hits production. Postlyy addresses this through dedicated workspaces paired with granular role-based access control (RBAC).
Multi-Tenant Access and Client Review Workflows
Workspaces partition platform connections, media assets, posting queues, and unified inbox threads. User permissions operate across three defined roles:
- Admin: Complete control over workspace configuration, connected accounts, billing settings, and team invitations.
- Editor: Authority to draft posts, manage the publishing queue, and reply to conversations in the unified inbox.
- Viewer: Read-only access to calendars, drafts, and analytics dashboards.
For agency-client collaboration, Postlyy provides an explicit review stage. Content placed into the review queue requires approval before dispatch. External clients or team leads can execute a one-click approval or request modifications with inline feedback.

Analytics Engine and Scheduled Reporting
The analytics engine aggregates multi-platform metrics into centralized performance dashboards. The system calculates engagement rates on individual posts, compares the reach of different content types (such as text, images, or video), measures hashtag efficiency, and tracks net follower growth over time.

Teams can query data directly or set up automated distribution:
- Export Formats: Available on demand as raw JSON, structured CSV, or formatted PDF documents.
- Scheduled Email Delivery: Recurring email dispatches send PDF performance summaries directly to clients or team leads on a set schedule.
Engagement-Driven Posting and Competitor Tracking
Rather than relying purely on generic schedules, Postlyy dynamically calculates optimal posting windows using workspace activity.
| Feature | Implementation Logic |
|---|---|
| Optimal Posting Slots | Algorithms compute peak windows from historical post engagement and inbound inbox volume. Until a workspace reaches 5 published posts and 20 inbox messages, the interface falls back to labeled default benchmarks. |
| Link Tracking | Built-in short links capture click counts per post and network with custom UTM parameters. The redirect handler strips preview crawlers and automated bots to report accurate human traffic. |
| Competitor Monitoring | Tracks target profiles daily via Instagram Business Discovery, public X metrics, and public Telegram channel subscriber counts. Limits scale by plan: 0 (Free), 3 (Starter), 10 (Pro), or 30 (Business). |
Extensibility and Billing: Webhooks, REST API, and Crypto Payments
Outbound Webhooks and Developer Integrations
To fit into custom agency stacks and internal pipelines, Postlyy exposes programmatic interfaces alongside its user interface. The platform publishes a REST API defined against the OpenAPI 3.1 specification, allowing teams to query workspace state and trigger publishing programmatically.
For event-driven architectures, Postlyy includes an outbound webhook engine. Workspace administrators can register HTTPS endpoints to listen for specific lifecycle events:
- Publishing:
post.published,post.failed,post.partial - Inbox:
message.received - Collaboration:
review.approved,review.changes
Every webhook request contains an X-Postlyy-Signature header calculated using HMAC-SHA256 over the payload body using the workspace's secret key. If the receiving endpoint fails to return a 2xx HTTP status, the task worker queues the payload for automatic redelivery across five retry intervals: 1, 5, 30, 120, and 360 minutes.
For no-code orchestration, Postlyy provides a Zapier integration built on these APIs. It includes 6 instant triggers mapping to the webhook events and a dedicated "Create Post" action that allows external CRMs, forms, or content systems to inject posts directly into workspace queues.
Prepaid Crypto Billing via Heleket
Postlyy manages subscriptions and add-on capacity via non-custodial prepaid crypto billing powered by Heleket. There are no recurring credit card mandates, stored payment details, or surprise auto-renewals.
User initiates upgrade │ ▼ Heleket checkout (on-chain payment) │ ▼ Inbound webhook received ──► Verify HMAC-SHA256 signature │ ▼ Server-to-server GET to Heleket API (Confirm amount, token, & tx status) │ ▼ Credit workspace / apply tier
To eliminate spoofed callbacks, Postlyy enforces a two-step validation sequence:
- Signature Verification: The worker validates the cryptographic signature sent by Heleket on the inbound payload.
- Server-to-Server Re-read: The backend makes an isolated GET request directly to Heleket's API to fetch the authoritative invoice status, matching the expected payment currency, asset amount, and confirmed transaction state before altering any workspace limits.
The billing engine also supports optional EU VAT reverse charge data capture for B2B receipts and enables one-off top-ups for AI credit packs when a workspace depletes its monthly model allocation.
Subscription Tier Configuration
Platform tiers are enforced by PostgreSQL workspace quotas:
| Tier | Price (Monthly) | Managed Accounts | Posts / Quotas | Included Seats |
|---|---|---|---|---|
| Free | $0 | 3 | 10 posts / month | 1 seat |
| Starter | $12 | 10 | Standard limits | 1 seat |
| Pro | $29 | 50 | High-volume scheduling | 5 seats |
| Business | $79 | Unlimited | Custom pipelines | Unlimited seats |
Selecting annual billing applies a 20% discount across all paid tiers. If a prepaid term expires without a manual top-up, the workspace cleanly downgrades to Free tier boundaries without dropping scheduled data or connected credentials.
Build vs. Buy: SaaS MVP Cost Breakdown and Studio Engineering
The Financial Calculus: Rented Seats vs. Owned Infrastructure
Commercial social scheduling tools rely on seat-based and profile-based pricing tiers that penalize agency growth. When an agency handles dozens of client brands, monthly subscription costs quickly compound into thousands of dollars per year. Beyond the recurring expense, agencies remain constrained by third-party feature roadmaps, generic branding, and rigid API rate limits.
Deciding to build a social media management SaaS or deploy a white-label social media scheduler converts an ongoing operational expense into a proprietary asset. Building your own tool allows you to support non-standard channels—such as operating a dedicated telegram scheduler alongside traditional networks—while managing data ownership directly and eliminating per-seat markups for clients.
Engineering Without Handoffs
WEB3 Build Studio engineers SaaS products from architecture to deployment without fragmented handoffs, outsourced contractors, or generic templates. A single team handles system architecture, UX design, database modeling, external API integrations, and DevOps.
Clients retain full ownership of the source code and infrastructure from day one. Rather than deploying bloated microservice clusters, we build focused, resource-efficient applications using Node.js, PostgreSQL, and lightweight containers. You can read more about how we maintain high-density, low-overhead environments in our guide on /blog/how-we-host-28-apps-on-one-server.
Studio Pricing and Scope
We scope projects under transparent fixed pricing:
| Tier | Fixed Price | Included Scope |
|---|---|---|
| Web App / SaaS MVP | From $2,500 | Core publishing pipeline, single-purpose channel adapters, baseline queue system |
| Standard Build | $4,000–$7,000 | Multi-tenant workspaces, unified inbox, custom automation rules, role approvals |
| Pro Platform | From $9,000 | Custom AI guardrails with token logging, advanced analytics reporting, API and webhooks |
Every package includes product design, development, production deployment, and 30 days of post-launch bug fixes. For deeper financial comparisons across custom builds, explore our analyses on /blog/saas-mvp-cost-breakdown and /blog/web-app-development-cost.
Post-launch hosting and infrastructure care on our servers starts from $99/month for SaaS systems, covering server hosting, SSL setup, daily database backups, continuous monitoring, and normal updates.
We built Postlyy as our own product and run it on our own servers. Want a SaaS of your own — built, hosted and maintained (backups, monitoring and updates from $99/month)? Get a quote at https://web3buildstudio.com.
Frequently asked questions
What does it cost to build a social media management MVP versus a full platform?
A custom SaaS MVP starts from $2,500, with standard implementations typically ranging between $4,000 and $7,000. An MVP focuses on core functionality: connecting key social accounts via OAuth, drafting content, and scheduling posts to a basic queue.
A full-scale social management platform moves into the pro tier, which starts from $9,000. This scope adds complex multi-platform integrations, unified inboxes, automated analytics ingestion, AI-assisted content tools, and role-based team management. Additional third-party API integrations, AI systems, and custom payment processors are scoped separately. Every build includes design, development, deployment, and 30 days of bug fixes, with ongoing hosting and care starting at $99 per month.
Do you need formal app review for every social media platform?
Requirements depend on the network. Platforms like Meta (Facebook and Instagram), LinkedIn, X, and TikTok require formal developer verification and app review before granting production-level publishing permissions to outside users. This process involves submitting screencasts, defining requested data scopes, providing terms of service, and completing organization checks.
In contrast, platforms like Telegram require no formal app review to publish content. You can create a bot via BotFather, configure channel permissions, and start publishing immediately through the standard API. For restricted platforms, development can proceed in sandbox or test modes while submitting production applications for review.
Can a custom social media scheduler be white-labeled for agency clients?
Yes. Building a custom SaaS platform allows you to architect multi-tenant workspaces and custom domain routing from the start. Agencies can provide each sub-client with an isolated workspace, dedicated social profile connections, and branded client portals without third-party vendor marks.
By engineering the backend with PostgreSQL, Prisma, and Next.js, the system can handle dynamic theming, custom domains, and discrete user permission levels. Agencies can manage all publishing workflows centrally while presenting a clean, proprietary software interface to their customers. This model removes per-seat software licensing costs and enables agencies to package proprietary software directly into their service agreements.
How do scheduled posts publish reliably without third-party failures?
Reliable publishing requires resilient queue architecture rather than simple cron triggers. In production setups using Node.js, PostgreSQL, and Prisma, scheduled items are stored with status states: pending, queued, executing, published, or failed.
Worker jobs poll the queue, refresh expiring OAuth access tokens prior to publishing, and execute platform-specific API payloads. If an external platform returns a rate limit or transient network error, the system applies exponential backoff with retries instead of dropping the post. Failed attempts capture error logs for debugging, and idempotent database transactions ensure posts are not published more than once even during unexpected process restarts.
Can a social scheduler post to Telegram channels and personal accounts?
Publishing to Telegram channels and groups is straightforward using the standard Telegram Bot API. By adding an authorized bot as an administrator to your channel with posting permissions, your SaaS backend can publish formatted text, media, polls, and inline buttons programmatically.
Publishing to personal accounts requires using Telegram MTProto client protocols rather than the Bot API. This setup requires handling user session strings and phone verification flows. While technically possible, personal account automation must be handled carefully to avoid rate limits and account restrictions, whereas Bot API integration for public and private channels is fully supported, stable, and developer-friendly.
When does it make sense to build your own scheduler versus renting tools like Buffer or Hootsuite?
Off-the-shelf tools like Buffer or Hootsuite work well for individuals or small teams with straightforward publishing workflows. However, renting becomes inefficient when managing dozens of client workspaces, as per-seat and per-channel pricing accumulates quickly.
Building a dedicated scheduler makes sense when you need specific capabilities commercial tools do not support, such as direct Telegram community integrations, custom AI generation pipelines, proprietary content approval flows, or white-label client dashboards. A custom SaaS MVP, which starts from $2,500 on our pricing page, gives you complete ownership of your infrastructure, eliminates recurring per-user software fees, and creates an asset you can tailor or commercialize.