We run AlsheikhMedia's entire content operation on zero software spend. Here is the exact stack — Astro, Cloudflare Pages, GitHub Actions, Obsidian, and Google Search Console — with the real tradeoffs and an honest account of what free tools still cannot solve.

We run AlsheikhMedia’s entire marketing operation on zero software spend. Five tools — Astro, Cloudflare Pages, GitHub Actions, Obsidian, and Google Search Console — cover writing, publishing, CI/CD, analytics, and SEO measurement.

This is the exact stack we use, the specific tradeoffs we accepted, and an honest account of what these tools still cannot solve. Nothing here is theoretical. No tool on the list is a free trial designed to sell you an upgrade.

The Stack at a Glance

CategoryToolWhat We Use It For
Website & CMSAstro + MarkdownBilingual blog, landing pages
Hosting & CDNCloudflare PagesGlobal edge delivery, SSL, analytics
CI/CDGitHub ActionsAutomated builds, link checking, deploys
AnalyticsCloudflare Web AnalyticsPrivacy-first traffic data
WritingObsidianDrafts, notes, local-first editing
SEOGoogle Search ConsoleKeyword data, indexing, performance

Total monthly cost: AED 0.

Website: Astro + Markdown Files

Most companies start their marketing stack decision with “which CMS should we use?” WordPress, Webflow, Ghost, Contentful — each comes with hosting costs, plugin subscriptions, and maintenance overhead.

We skipped the question entirely. Our blog posts are Markdown files in a Git repository. Our framework is Astro, which compiles those files into static HTML at build time. The output is plain HTML and CSS — no server, no database, no runtime.

This sounds like a developer’s choice, not a marketer’s. But consider what you get:

Zero hosting cost. Static files are free to host on Cloudflare Pages, Netlify, Vercel, and GitHub Pages. We use Cloudflare Pages. Our site is served from edge nodes in 300+ cities worldwide. The free tier has no bandwidth limits.

Zero CMS cost. Markdown is the CMS. Any text editor works. Version history comes from Git. Collaboration happens through pull requests. There’s no admin panel to secure, no plugins to update, no database to back up.

Zero performance cost. Our pages load in under 1 second on a 3G connection. No JavaScript framework runs in the browser. Google’s Core Web Vitals are green across the board. This isn’t optimization — it’s the default behavior of static HTML.

The tradeoff? Non-technical team members can’t edit content through a web interface. For a team where everyone is comfortable with Markdown and Git, this isn’t a tradeoff. For teams with non-technical contributors, a Git-based CMS like TinaCMS or CloudCannon — still free or near-free — adds a web editing interface on top of the same files.

Hosting: Cloudflare Pages

Cloudflare Pages gives you:

  • Unlimited bandwidth (no overage charges, ever)
  • Automatic SSL certificates
  • Global CDN with 300+ edge locations
  • Preview deployments for every pull request
  • Built-in Web Analytics (privacy-first, no cookies)

The free tier supports unlimited sites, unlimited requests, and 500 builds per month. We deploy twice a week (Tuesday and Thursday blog posts) plus occasional site updates. We’ve never come close to the build limit.

Compare this to a typical WordPress setup: shared hosting (AED 37–110/month), SSL certificate (often included now, but not always), CDN (AED 73+/month for CloudFront or similar), and a caching plugin to make it all tolerable. You’re spending AED 110–185/month just to match what Cloudflare Pages gives you for free.

CI/CD: GitHub Actions

Every push to our main branch triggers an automated pipeline:

  1. Install dependencies
  2. Build the Astro site
  3. Run internal link checks (catch broken links before they go live)
  4. Deploy to Cloudflare Pages

GitHub Actions gives you 2,000 minutes per month on the free tier. Our build takes about 45 seconds. At 8–10 deploys per month, we use roughly 8 minutes. That’s 0.4% of our free allocation.

The link checker is worth highlighting. We wrote a script that crawls the built site and verifies every internal link resolves to an actual page. It catches the number one blog maintenance problem — broken links from renamed or deleted pages — before the site goes live. Total cost of this quality gate: AED 0.

Analytics: Cloudflare Web Analytics

Google Analytics is free, but it’s not really free. You’re paying with your visitors’ privacy, your site’s performance (the GA4 gtag.js script weighs roughly 134 KB compressed), and your time managing cookie consent banners to comply with GDPR.

Cloudflare Web Analytics is genuinely free. It’s built into Cloudflare Pages — a lightweight beacon is automatically injected, no manual setup needed. It measures traffic without requiring cookies. It doesn’t track individual users. It tells you what you actually need to know: which pages get traffic, where visitors come from, and what devices they use.

What you give up: no conversion funnels, no event tracking, no user flow visualization. For a content marketing operation where the primary metric is “are people reading our articles,” this is everything we need. If you need event tracking, Plausible ($9/month) or Umami (free, self-hosted) are privacy-respecting alternatives.

Writing: Obsidian

There are genuinely good free writing tools available. Notion has a solid free tier — unlimited personal pages, basic collaboration, and a flexible workspace at no cost. Google Workspace via Gmail gives you 15 GB of storage, Google Docs, and the full collaborative suite for free — that’s a generous baseline for any small team.

We write in Obsidian not because the alternatives are expensive, but because of how it works: free-flow note-taking with Markdown files as first-class citizens. Our draft files live in the same Git repository as the website. When a draft is approved, it’s already in the right format: a Markdown file ready to commit. No copy-paste step, no export conversion, no version mismatch.

The editorial review workflow: writer drafts in Obsidian, pushes to a branch, opens a pull request. The reviewer reads the diff and leaves comments on GitHub. The writer updates and the pull request gets merged. Version history is automatic. No “which version is the latest?” confusion anywhere in the process.

For bilingual work, Obsidian supports RTL text natively. Our Arabic writer works in the same tool with the same Markdown-and-Git workflow. No separate environment required.

The tradeoff: Obsidian is not a browser-based editor. Team members who are not comfortable with Markdown or Git need onboarding before they can participate in this workflow. For teams with non-technical contributors, TinaCMS (free tier available) provides a web editing interface on top of the same Markdown files.

SEO: Google Search Console

The best SEO tool is free and made by the only company whose opinion actually matters: Google.

Search Console tells you:

  • Which queries bring people to your site
  • Your average position for each query
  • Click-through rates by page
  • Indexing status and errors
  • Core Web Vitals scores
  • Mobile usability issues

Paid SEO tools like Ahrefs (from $29/month Starter), SEMrush ($140/month Pro), or Moz ($49/month Starter) add competitor analysis, backlink tracking, and keyword difficulty scores. These are useful for established sites competing in crowded niches. For a blog in its first year, Search Console gives you everything you need to understand what’s working and what isn’t.

Our workflow: check Search Console weekly. Look at which pages are gaining impressions. Look at which queries we rank for that we didn’t target. Write more content around what’s already working. This simple feedback loop has driven more traffic growth than any paid tool could.

Supplement with: Google Trends (free) for topic validation, AnswerThePublic (limited free searches) for question-based keyword ideas, and AlsoAsked (3 free searches per day) for related question clusters.

Project Management: GitHub Issues

If your code lives on GitHub, your editorial calendar can too. GitHub Issues gives you:

  • One issue per blog post (title includes the publish date)
  • Labels for status (draft, review, approved, published)
  • Milestones for weekly or monthly content goals
  • Assignment to team members
  • Comment threads for feedback and approvals

One issue per blog post with a checklist: draft EN, draft AR, CMO review, board approval, publish. The issue tracks the full lifecycle from idea to live page. When the post goes live, the issue closes.

We’re proposing this as our standard workflow for editorial management across all projects. The logic is simple: if your code and your deploys live in GitHub, your editorial decisions should too. One tool, full context, zero additional cost.

If your team doesn’t live in GitHub, Trello (free tier: unlimited cards, 10 boards) or Linear (free for small teams) are solid editorial calendar tools.

What This Stack Can’t Do

Transparency matters more than salesmanship. Here’s what our AED 0 stack doesn’t cover — and what we’re thinking about for each gap:

Email distribution. We don’t currently run an email newsletter. When we do, the right free starting point is Buttondown (free for the first 100 subscribers, clean interface) or Mailchimp’s free tier for small lists. We haven’t solved this yet, and we’re not pretending we have.

Automated social distribution. Posts are currently distributed manually to social platforms. When volume justifies automating, dlvr.it (free tier: 3 RSS feeds) and Buffer (free tier: 3 channels, 10 scheduled posts) handle this well. For now, manual works.

Design tooling. We haven’t standardized a design tool for blog images and social cards. Canva’s free tier is the fastest path for template-based image creation. Figma’s free tier is more powerful for custom work. This is an open gap on our current stack.

Paid advertising. Google Ads, Meta Ads, and LinkedIn Ads cost money by definition. No free tool replaces ad spend. Our approach: invest in organic content first, prove demand, then amplify winners with paid spend.

Advanced email automation. Drip campaigns, behavioral triggers, lead scoring — these require paid email platforms (Kit, formerly ConvertKit, at $33/month; ActiveCampaign at $15/month Starter). We’ll add automation when subscriber count justifies the cost.

Competitor intelligence. SimilarWeb, SpyFu, and Ahrefs’ competitor analysis features cost money. Our workaround: read competitors’ blogs, follow them on social, and focus on writing better content rather than reverse-engineering their strategy.

Video production. DaVinci Resolve (free) is professional-grade but requires serious hardware and a steep learning curve. CapCut (free) is good for short-form. For our AI video editing workflow, some tools require paid tiers for production use.

The Philosophy Behind AED 0

Running a zero-cost stack isn’t about being frugal. It’s about clarity.

When you remove tool costs from the equation, you’re left with the only question that matters: is the content good enough to earn attention? No tool fixes bad content. No analytics dashboard reveals why nobody shared your article. No email platform compensates for a boring subject line.

The constraint also forces better decisions. When you can’t buy your way to more distribution, you write things worth sharing. When you can’t A/B test 47 variations, you develop taste. When you can’t hire an agency, you learn the craft yourself.

Not every company should run an AED 0 stack. If you have budget and your bottleneck is execution speed, paid tools absolutely help. But if you’re starting from zero, or if you’re questioning whether your AED 7,000/month tool spend is driving proportional results, try this: cancel everything for one month. Use only free tools. See what actually breaks.

You might be surprised how little does.


This is part of our ongoing series on building AlsheikhMedia’s marketing operation from scratch. See also: The Arabic Content Gap and Digital Sustainability.