Where the social hours actually go
Ask a small business owner how much time social media takes and you get a number. Ask what the time was spent on and the answer is almost never "writing." Four things eat the hours, and none of them are creative work.
The calendar is mostly archaeology
Planning a month of content sounds like a thinking task. In practice most of the session is spent reconstructing what already happened: scrolling back to check what was posted three weeks ago so you do not repeat yourself, hunting for the photo from that job in March, finding the one video where the lighting was decent, cropping it, and then writing captions that are slightly different for each platform.
Then there is approval. In a small business, the owner wants to see it before it goes live, which means the calendar is really a spreadsheet plus a text thread plus a memory of who said yes to what. Nothing about that is scalable, and the first busy week breaks it.
Cross-posting is not copy and paste
Putting the same content on four platforms is treated as a five minute job and is closer to twenty five. Aspect ratios differ. Caption length limits differ. Links behave differently on each network, so a post that works on Facebook needs a different call to action on Instagram. Hashtag conventions differ by platform and by audience. Alt text and tagging get skipped entirely because they are the last step and the person is already done.
And the shortcut is visible. An identical asset dropped on every network reads as an afterthought on at least two of them, which is how businesses end up posting more and getting less.
The inbox has more than one door
Customer questions do not arrive in one place. They arrive as Instagram DMs, replies to Stories, comments under a post, Facebook page messages, and increasingly through Google Business Profile. A person asking "do you deliver to my area" in a comment is a lead. A person leaving a complaint under a photo is a reputation event. Both look identical to a notification badge.
Because the inbox lives on somebody's phone rather than in a system, nobody really owns it. Messages get read at a red light and answered later, or not at all. Response expectations, meanwhile, are set by whichever competitor answers fastest, which is a standard nobody agreed to and everyone is judged against.
User-generated content evaporates
The best content most small businesses will ever have is made by customers, and almost all of it is lost. Someone tags you in a Story that disappears in 24 hours. Someone posts a photo of your work with your handle in the caption and you see it a week later. A five star review with a great line in it sits in a platform nobody exports from.
Collecting that material is not hard, it is just relentless. It has to happen every day, forever, and it competes with running the business. So it does not happen, and the business goes on producing content from scratch while free content it already earned expires unwatched.
The pattern across all four is the same. Distribution and capture are mechanical and repeat on a schedule. Judgment, taste, and the actual reply to a customer are not. Automation belongs entirely on the first side of that line.
What's actually worth automating
Social media has two distinct jobs: creating content and distributing it. Automation handles distribution. It does not help you create better content, and it will not fix an account that's posting things nobody wants to see.
What it does well: takes content you've already made, drops it on the right platform at the right time, and frees you from the daily act of logging in, uploading, and hitting publish. For a business owner posting 3–5 times a week, that's a genuine 2–3 hours recovered every week, every week, indefinitely.
The tool trap: Buffer, Later, Hootsuite, Sprout Social: they all do this. They also cost $15–$80/month, add another login to manage, and lock your content inside their platform. A custom build does the same job, uses tools you already have (Google Drive, Google Sheets), and has zero monthly fees after the one-time build cost.
The workflows worth building are the ones that run on a schedule and follow the same steps every time: feed posts, stories, and cross-platform publishing. Everything else: DMs, comments, community management: still needs a person.
Workflow 1: Google Drive to Instagram and Facebook feed posts
This is the core build. Content lives in Google Drive. A Google Sheet is the schedule. A script reads the Sheet every 15 minutes, picks up any rows marked "ready" that are due to post, grabs the file from Drive, and publishes it to Facebook and Instagram via the Meta Graph API.
The client's entire interaction with the system is the Sheet. They never touch n8n, Zapier, Buffer, or any other tool. They fill in a row, set status to "ready", and the post goes live at the time they set.
Step 1 Drop image or video into Google Drive folder → Step 2 Paste Drive link into Google Sheet row with caption, date, time, platform → Step 3 Set status to "ready" → Auto Script uploads file to Cloudinary for a public URL → Auto Meta Graph API posts to Facebook and/or Instagram at scheduled time → Auto Status updates to "posted"
Workflow 2: Story automation
Stories are a different API endpoint but the same basic pattern. The Sheet row gets a "story" value in the Type column instead of "post". The script routes it to the story upload flow: which on Facebook requires a two-step process (upload the photo, then publish it as a story) and on Instagram requires setting the media type to STORIES before publishing.
Stories disappear after 24 hours, so they're right for time-sensitive content: a same-day special, an event reminder, a flash promotion. The client batches these in the Sheet exactly like feed posts: same workflow, same columns, different type.
Type: story Script detects "story" in the Type column → Facebook Photo uploaded as unpublished → published as photo story → Instagram Media container created with STORIES type → published → Auto Status updated to "posted"
Workflow 3: Cross-platform scheduling
The Platform column in the Sheet handles this. Set it to "facebook", "instagram", or "both". The script reads the value and fires the appropriate API calls. One row, one piece of content, published to both platforms at the same time if needed: or held to one if the content only makes sense on one.
This is the part that saves the most time. Manually posting the same content to two platforms doubles the daily friction. The Sheet eliminates it: write the caption once, check the platform column, done.
Buffer, Later, Metricool, Hootsuite: the line they draw
Every business managing its own social presence eventually looks at a scheduling tool, and the honest answer is that these are good products. It is worth knowing what each is actually for before deciding whether a custom build makes sense.
Buffer is the simplest of the group. A queue, a set of connected accounts, and a clean interface for putting posts into time slots. If the only problem is "I want to write five posts on Sunday and have them go out during the week," Buffer solves it with almost no learning curve.
Later grew up around Instagram and still shows it. Visual planning, a media library, and a grid preview so you can see how a feed will look before publishing, plus link-in-bio handling. It suits businesses where the feed is a storefront and the look of the grid matters.
Metricool bundles scheduling with analytics and competitor tracking in one place, which appeals to people who want performance reporting without paying for a second tool and stitching the two together.
Hootsuite is the most enterprise-leaning. Many accounts, team permissions, approval steps, stream-based monitoring, and a unified inbox view. It is built for a team managing social as a job rather than one owner managing it between other jobs.
Here is where all of them stop, and the pattern is consistent:
They begin where your content already exists. Every one of these tools assumes you arrive holding a finished asset and a caption. None of them reach into the place your business actually produces content, which is the phone of the person doing the work, a shared Drive folder, or photos attached to a completed job in your field service app. The hardest part of the calendar is filling it, and that is upstream of every scheduling tool.
Approval assumes everyone logs in. Approval workflows exist on the higher plans, and they work if your team lives in the platform. In a small business, approval happens by text message to an owner who is not going to open a scheduling app to click approve.
Inbox coverage varies and does not know your business. Where a unified inbox exists, it collects messages. It cannot tell a buying question from a supplier email from a spam comment, because it has no idea what your business sells or which questions mean money. The triage judgment stays with you.
Nothing collects what customers make. Mentions, tagged Stories, and photo reviews are not a scheduling problem, so no scheduling tool owns them. There is no library building itself in the background.
The queue lives on their side. If the subscription lapses, publishing stops and the archive of what you scheduled goes with it.
The decision is not really custom versus off-the-shelf. It is where your friction sits. If your only problem is posting on a schedule, buy a scheduling tool, it is cheaper than anything we would build. If the friction is upstream, getting content into the queue at all, or downstream, handling what comes back, that is the gap a build closes. Plenty of clients run both.
The case for a custom build
When the friction is upstream or downstream, the arguments below are what tip the decision:
The workflow stays inside Google Workspace. No new logins, no new tools to learn. Content doesn't leave Drive. The script runs on the client's own Google account, so if anything happened to us, it keeps running. That's different from Buffer or Later, where the whole thing stops if you cancel. And the one-time cost pays for itself inside 18 months against a mid-tier subscription.
The real advantage: A custom build can be extended. Need to pull captions from a Google Doc template? Add that. Need to notify Slack when a post goes live? Add that. Off-the-shelf tools are fixed. A custom build grows with the business.
What this costs
| Build | What's included | One-time cost |
|---|---|---|
| Feed posts (FB + IG) | Google Drive → Sheet → Facebook and Instagram feed posts, status tracking | $2,000 |
| Feed posts + Stories | All of the above plus story automation on both platforms | $2,000 |
| Full build + LinkedIn | Facebook, Instagram, LinkedIn via LinkedIn API. Feed only (LinkedIn stories deprecated) | $2,500 |
No monthly fees. No per-post charges. No subscription tools required beyond a free Cloudinary account. Built in 1–2 weeks.
Those figures sit inside our single automation tier, which runs $2,500–$7,500 fixed for one workflow. Builds that connect several systems at once run $8,000–$20,000 and take 2–3 weeks. Full custom platforms run $30,000+. Everything is priced in writing before work starts, and every build carries a 30-day window where we fix anything that is not right.
The three builds worth doing before you buy another tool
If a business managing its own social presence asked us where to start, these are the three, and none of them is a scheduling tool replacement. Each fits the single automation tier at $2,500–$7,500 fixed, delivered in 1–2 weeks, with a 30-day fix-anything window. You own the workflow and the credentials, any ongoing Aplos support and third-party costs are defined in writing, and the only ongoing cost is the vendor tools themselves, typically $20–$150 per month, paid by you directly.
1. Field-to-feed capture. This one attacks the empty calendar rather than the schedule. Staff text a photo to a dedicated number or drop it into a shared album or Drive folder from wherever they are. The workflow files it with the date and whoever sent it, creates a draft row in the content calendar, and texts the owner a preview to approve by replying yes. Approved items publish on the schedule already built. The business stops running out of content because capture now happens at the moment the work looks good instead of on a Sunday afternoon from memory. Scope covers one capture path, the calendar, and one or two publishing destinations.
2. Inbox triage router. Comments and messages from your Facebook page and Instagram account are pulled into one place and sorted by rules you define: likely buying question, complaint, spam, or general chatter. Anything that looks like a lead or a complaint goes straight to a phone with the original text and a direct link to reply. Everything gets logged so you can see what people actually ask. The automated part is routing and acknowledgment only. Real replies stay human, because an auto-reply to a complaint makes it worse. Scope covers two platforms, the classification rules, and the notification path.
3. UGC and mention library. Tagged posts, mentions, and reviews are captured to a Drive folder and a sheet as they happen, each row carrying the source, the handle, the date, the text, and a link back to the original. A permission-request message template is included so you can ask before reusing anything. The result is that the disappearing content customers make for you becomes a library you own, which is the cheapest source of good posts a business has. Scope covers the monitored sources and the capture destination.
Frequently asked questions
We build it. You run it.
Tell us what you're posting to and how often. We scope the build, price it flat, and deliver in 1–2 weeks.
Get a free audit →