Traditional strategic planning is broken. We spend weeks crafting the perfect Objectives and Key Results (OKRs) for the quarter, only to consign them to a spreadsheet or slide deck that gathers digital dust. Tracking becomes a manual, tedious chore of chasing down updates, and the plan quickly becomes disconnected from the real work happening in your engineering and product teams. The result? A brilliant strategy that fails in execution.
What if you could treat your business plan with the same rigor, automation, and version control as your application code?
This is the promise of Business Planning as Code, a new paradigm for translating your company's vision into executable, automated workflows. With the Plans.do API, you can stop managing and start engineering your company's strategy.
This post will walk you through a step-by-step workflow to automate your entire OKR cycle, from definition to tracking to reporting, using Plans.do.
Before we dive into the solution, let's acknowledge the common pain points of the traditional OKR process:
By treating your strategic plans as code, you bring the powerful principles of software development to your business strategy.
Let's build a practical, automated OKR cycle.
At the beginning of the quarter, define your objectives and key results in a simple script using the plans.do SDK. This script becomes your master plan, which you can commit to your company's Git repository.
import { plans } from '@do/sdk';
// This script can be run at the start of each quarter
const newPlan = await plans.create({
name: "Q4 2025 Expansion Plan",
description: "Expand into the European market and increase user base by 20%.",
type: "OKR",
goals: [
{
objective: "Achieve 50,000 new users in EU",
keyResults: [
{ metric: "New User Signups", startValue: 0, targetValue: 50000 },
{ metric: "Website Traffic (EU)", startValue: 0, targetValue: 200000 }
]
},
{
objective: "Establish Local Partnerships",
keyResults: [
{ metric: "Signed Partner Agreements", startValue: 0, targetValue: 5 }
]
}
]
});
// The unique ID for your new plan
console.log(newPlan.id);
// pln_1a2b3c4d5e6f7g8h
With this simple script, you have programmatically created a version-controlled, API-accessible strategic plan.
This is where the magic happens. Instead of manually updating a spreadsheet, create a simple, scheduled agent (like a cron job or a serverless function) that pulls data from your source systems and updates the plan via the API.
Imagine a script that runs daily to check the number of new user signups from your production database:
import { plans } from '@do/sdk';
import { getNewEUSignupsFromDB } from './your-data-source';
const PLAN_ID = 'pln_1a2b3c4d5e6f7g8h';
async function updateSignupKR() {
// 1. Fetch the latest data from your system
const currentSignups = await getNewEUSignupsFromDB();
// 2. Update the Key Result in Plans.do
await plans.updateKeyResult({
planId: PLAN_ID,
objectiveName: "Achieve 50,000 new users in EU",
metric: "New User Signups",
currentValue: currentSignups
});
console.log(`Successfully updated 'New User Signups' to ${currentSignups}.`);
}
// Schedule this function to run automatically (e.g., daily)
updateSignupKR();
Now, your key result for user signups is always up-to-date, with zero manual intervention. You can create similar agents for every key result, connecting directly to Salesforce for partner agreements or Google Analytics for website traffic.
Accurate, real-time data is only useful if it's visible. Use the Plans.do API and webhooks to push progress updates to the tools your team lives in.
At the end of the quarter, your plan in Plans.do contains the complete, accurate history of your progress. There's no need to scramble for data. The review process is based on a trusted, automated source of truth.
To plan for the next quarter, simply copy your plan definition script, adjust the objectives and targets, and run it again. The entire strategic history of your company builds over time, right in your Git repository.
By automating your OKR cycle with Plans.do, you move from static goal-setting to dynamic goal execution. You create a system where your strategy is a living, breathing part of your daily operations, not a forgotten document.
The benefits are transformative:
Ready to bring the power of automation and engineering discipline to your business strategy? Explore the Plans.do platform and start building your first automated plan today.
Q: What is Plans.do?
A: Plans.do is an API-first platform that lets you define, manage, and track your strategic business plans as code. It allows for the automation of goal setting, progress tracking, and reporting by integrating planning directly into your software and business systems.
Q: How does 'Business-as-Code' apply to strategic planning?
A: By treating your strategic plans as code, you can version control them (e.g., in Git), automate their creation and updates via API, and trigger actions in other systems when milestones are reached. This brings the reliability, scalability, and automation of software development to your business strategy.
Q: What kind of planning frameworks can I implement?
A: Our flexible API is framework-agnostic. You can easily model Objectives and Key Results (OKRs), V2MOM (Vision, Values, Methods, Obstacles, Measures), Balanced Scorecards, or any custom planning methodology your organization uses.
Q: Can I integrate Plans.do with other tools?
A: Absolutely. Plans.do is designed for integration. Use our webhooks and API to connect with your project management tools (like Jira or Asana), communication platforms (like Slack), and business intelligence dashboards (like Tableau) to create a fully synchronized planning ecosystem.