Every post you publish, on one calendar.
Social posts, SEO articles and, soon, emails all land on the same calendar. Ocoya schedules them, holds what needs a yes, and sends each one out at the right time.

Your calendar is the departures board.
Every post for every connected profile sits in one place, with its time, where it is going and where it stands. A gap next week is something you see now, not something you find out about later.
Social, SEO and email
Filter the calendar by type. Articles sit beside posts, and emails join them when they launch.
Nothing fails quietly
If a network refuses a post, it keeps the reason the network gave, so you can fix it.
Campaigns arrive spaced out
A campaign lands on the calendar already spread across the week.
The same posts, seen the way you need.
List, Board and Calendar are views, not places. Switching between them never moves a post.
Newest first, with a status filter. The view for paging through lots of posts.
Columns by status, each with a count. The Error column shows trouble at a glance.
A month grid with drafts in a rail beside it. Drag a draft onto a day to schedule it.
Move a post by moving it.
Pick a post up and drop it on another day. It moves on every network it is going to, and a draft from the rail gets its date the moment it lands.
- Drag between days on the calendar
- Drop a draft on a day to schedule it
- One post, tracked on each network it goes to
Up to a thousand posts a minute.
Queue a whole campaign at once, or let a workflow feed the calendar from an RSS feed or a schedule. The scheduler is built for teams running dozens of profiles, not one account.
Publish like a human On
Switch it on and posts go out at slightly different times, within 5 minutes of the time you chose, so a busy queue does not look automated. Switch it off for a launch that has to be exact.
Post when your audience is actually there.
Ocoya suggests the peak hours to aim for while you schedule. Take the suggestion or ignore it: nothing on the calendar moves without you.
- Peak hours suggested while you schedule
- A suggestion, never an automatic reschedule
- Slots set per channel, since audiences differ
This audience is busiest Tuesday and Wednesday at 18:00.
Posting slots, per channel
Set the weekly times each channel should post at. Ocoya offers them when you schedule, so you pick from your plan instead of choosing an hour every time.
Nothing takes off without clearance.
Send any post for approval and pick who signs it off. It holds until they answer, even if its scheduled time comes and goes.
Request approval
Pick one or more of the brand’s members. They get an email with one-click approve or reject.
Held on the ground
The post waits at Pending approval. It never publishes late once approved, so a missed time gets a new one.
Approved or sent back
Approve and it goes out at its time. Reject and it returns to draft to fix and send again.
Made for client sign-off
The Client role can approve, decline and comment, but cannot create or edit posts. Clients only see what is waiting on them.
Approvals are on every plan.
Public link
Create a view-only calendar URL.
Show the client the plan. Skip the login.
Switch on a public link and anyone with it sees a read-only calendar in their browser. No Ocoya account, no access to anything else. The Share button gets a small green dot so you know it is on.
- Read-only: no editing, scheduling or commenting
- One link per brand, so clients never see each other
- Switch it off and that link is gone for good
Turning it back on makes a new link. Anyone holding the old one sees an error page.
The right hour, wherever the audience is.
Every brand has its own time zone, so a London client and a New York client each see their own local time. One post can use a different zone without touching the rest.
A zone per brand
Set it once in Planner settings. New brands start on UTC, so set yours before you schedule.
A zone per post
A launch at 9am Pacific? Pick the zone on that post alone. The brand keeps its own.
Daylight saving handled
Ocoya uses named zones, not fixed offsets, so 9:00 stays 9:00 on both sides of a clock change.
Your week, your start
Choose the day your calendar and date pickers start on.
Notes for the crew, never for the passengers.
Labels and comments stay inside your team. Neither ever appears on a published post.
Labels
Open labels⌘LColour-coded tags to find posts again: a campaign, a content type, a stage of your own. Up to 5 on a post, and each brand keeps its own set.
Maximum of 5 labels allowed
Comments on the post
Feedback sits on the post it is about. Type @ to tag a teammate and they are told.
Nina
Can we lead with the price? It gets buried at the end.
Tom
@Nina good catch, rewritten. Have another look.
Checked before it leaves the gate.
Each post gets looked over for the networks it is going to, while you can still change it.
- A caption per networkGive any network its own version, with a live count against its real character limit.
- Post scoreThe opening line, length, hashtags and media are scored, with what to improve.
- PreviewSee how the post will look on each network before it goes.
- Translation built inTranslate a caption in place, next to rewrite, shorten and change tone.
- Hashtag librariesAttach a saved set of tags in one click instead of retyping them.
Everything you make takes off from here.
Campaigns, workflows and the rest all end up on the calendar.
Campaigns
A month of posts or articles, planned and queued for your approval.
Learn moreWorkflows
Auto-post your blog from RSS, or keep something going out on a schedule.
Learn moreSEO articles
Articles for your own site, scheduled on the same calendar as your posts.
Learn more Coming soonEmails
Newsletters on the same calendar, in the same voice.
Learn moreUp to a thousand posts a minute. Queue a whole campaign, or connect an RSS feed and let a workflow fill the calendar. It is built for agencies and teams running dozens of profiles.
SEO articles already sit on the calendar beside your social posts, and you can filter by type. Emails are coming soon and will land on the same calendar.
It holds at Pending approval and will not publish, even if its time passes. Approve it and it goes out at its scheduled time; reject it and it goes back to draft. If the time has already passed, give it a new one.
Yes. Switch on a public link from the Share button and they get a read-only calendar in the browser. If they need to approve posts or comment, invite them with the Client role instead.
Check Publish like a human in Planner settings. When it is on, posts go out within 5 minutes of the time you chose, so your schedule looks less automated. Switch it off when timing has to be exact.
The brand’s time zone, set in Planner settings. New brands start on UTC. You can also pick a different zone on a single post.

Clear your next month for take-off.
Plan it, get it approved and let Ocoya send it out on time.

















