How to Keep Projects Up to Date Automatically With AI (2027)

A 6-step method for automated project status updates from Jira, GitHub, Slack and meeting notes. Now/Done/Next template, worked example and tool guide.

Every Friday, a product manager or engineering manager rebuilds the same update. They read Slack threads, scroll the Jira board, check GitHub PRs and dig through their own meeting notes. By Monday it is already stale. This guide from the BuildBetter team shows a repeatable way to stop doing that. It works with or without AI, and it ends with an honest threshold for when tooling is worth paying for.

Watch: Use AI to Write Project Status Updates Automatically (BuildBetter tutorial)

What an Automatically Updated Project Status Is

An automatically updated project status is a fixed-format summary (what is happening now, what is done, what is next, and overall health) assembled from the systems where work already happens: merged code, ticket changes, meeting decisions and customer calls. It is assembled on a set cadence instead of written from memory.

"Automatic" has a narrow meaning here. The gathering and the first draft are automated. Deciding the status color, how serious each risk is, and which trade-off to make stays with a named human owner. Every credible process framework, and every serious tool, keeps a human sign-off step before the update goes out.

AI is optional. The method below works with a shared doc or spreadsheet, a calendar reminder and read access to the tools you already use. AI removes the collection step. It does not remove the thinking.

This page covers:

  • Why manual status updates go stale, and what specifically breaks
  • A 6-step method for a status update that mostly writes itself
  • A worked example with time spent per source: manual, method-driven and AI-generated
  • Common mistakes that make updates useless
  • The point at which tooling pays off, and which tools fit which problem
  • An FAQ with short, direct answers

Why Status Updates Go Stale (What Actually Breaks)

Status updates go stale because the information lives in four to six systems, nobody's job is to join them, and the person writing the update works from memory on a weekly cycle while the work changes daily. Asana's Anatomy of Work Global Index (2022 and 2023 editions) found knowledge workers spend about 58% of their time on "work about work": status updates, searching for information and chasing approvals. McKinsey Global Institute found interaction workers spend nearly 20% of the week searching for internal information or tracking down colleagues who can help.

The specific failure modes:

  • Scattered sources. Code is in GitHub, tickets are in Jira or Linear, decisions happen in meetings, context sits in Slack, and customer signal is in calls and support tickets. No single system holds the project's state.
  • Writing from memory. The writer over-weights the last two days and whatever they personally touched. Work owned by quieter teammates gets underreported.
  • Activity mistaken for progress. "14 tickets closed" says nothing about whether the milestone moved. The ticket count can go up while the project falls behind.
  • Decisions that never reach the record. A scope cut agreed in Tuesday's sync shows up nowhere in writing, so the update and reality diverge.
  • Watermelon status. Green on the outside, red on the inside. "Yellow" requires a reason and an uncomfortable conversation, so writers avoid it until the project is plainly red.
  • Snapshot lag. A weekly snapshot of daily-changing work means stakeholders act on information that is three to six days old.

The cost compounds. Stakeholders stop reading, start pinging individuals directly, and the update becomes a ritual instead of a tool. PMI's long-standing Pulse of the Profession research (2013) found ineffective communication was the primary contributor to project failure one-third of the time.

"How does a project get to be a year late? One day at a time." — Fred Brooks, The Mythical Man-Month

The Method: A Status Update That Writes Itself in 6 Steps

A status update writes itself when the format is fixed, each section maps to a specific source, and collection runs on saved queries instead of reading. This needs no budget. A shared doc or spreadsheet, a calendar reminder and read access to your existing tools are enough.

Step 1: Fix the format

Use the same four sections every time:

  • Now: what is in flight this period
  • Done: what shipped or was decided
  • Next: what is committed for the coming period
  • Status: On track / At risk / Off track, plus one sentence of reason and named risks with owners

Now / Done / Next / Status is a project-level variant of older formats: PPP (Progress, Plans, Problems), the classic standup questions, and RAG (red/amber/green) reporting. The On track / At risk / Off track labels match the health vocabulary in Linear Project Updates and Atlassian's project updates, so the format fits tools you may already use. A fixed format is what makes automation possible later. If the shape changes weekly, nothing can fill it reliably.

Step 2: Map each section to its source

Decide in advance where each section's content comes from and what qualifies.

SectionPrimary sourcesWhat countsWhat doesn't count
DoneMerged PRs, tickets moved to Done, decisions logged in meetingsMerged to main; accepted by the requester; decision written down with an owner"PR opened"; "mostly done"; ticket closed as won't-fix without a note
NowTickets In Progress, open PRs with commits in the window, active project threadsWork with activity in the current windowTickets In Progress with no movement for two weeks (that's a risk, not progress)
NextCommitted sprint or cycle items, follow-ups promised on customer callsItems with an owner and a target periodBacklog wishes; "we should look at"
Status / RisksBlocked tickets, slipped due dates, unresolved decisions, customer escalationsAnything that threatens the date or scope, with an ownerGeneral worries with no owner or mitigation

Step 3: Define scope and window

Specify one project or epic, one time window (for example, Friday to Friday), and exactly which Slack channels, repos and boards are in scope. Write this down at the top of the template so anyone on the team can reproduce the update if the owner is out.

Step 4: Set cadence and a single owner

Weekly works for stakeholders. Daily is optional and useful for the team itself. Assign one named owner per project. "The team" is not an owner, and an update owned by everyone ships late.

Step 5: Collect with saved queries, not reading

Replace scrolling with queries you save once and rerun:

  • Jira (JQL): project = BILL AND status CHANGED DURING ("2027-01-08", "2027-01-15"). For completed work: status CHANGED TO Done DURING (startOfWeek(-1), startOfWeek()). For risks: status = Blocked OR (duedate < now() AND statusCategory != Done). In Linear, save a custom view filtered by project, cycle and updated date.
  • GitHub: is:pr is:merged merged:>=2027-01-08 repo:ORG/REPO. Add base:main or label:billing-v2 to tighten scope.
  • Slack: a saved search on the project channel, limited to the window.
  • Meetings: a single "Decisions" line at the bottom of every meeting's notes. This one habit closes the biggest gap.

Paste results into the four sections. You are sorting, not researching.

Step 6: Review before it posts

The owner spends 10 to 15 minutes checking three things. Is the Status color justified by the risks listed? Is every risk named with an owner? Is anything in Done actually not done? Then post it to one fixed place, a channel or doc, at a fixed time. Andy Grove argued in High Output Management that reports are valuable mainly because assembling them forces thinking. The review is where that thinking now happens.

The 6 steps at a glance

  1. Fix the format: Now, Done, Next, Status.
  2. Map each section to its source systems and define what counts.
  3. Define one project, one time window and the in-scope channels, repos and boards.
  4. Set a cadence and name a single owner.
  5. Collect with saved queries, not by reading.
  6. Review for 10 to 15 minutes, then post to one place at a fixed time.

Using AI without a dedicated tool

Microsoft and LinkedIn's 2024 Work Trend Index found 75% of knowledge workers already use generative AI at work, so most readers have a general LLM available. Paste the raw output of Step 5 into it with a prompt that enforces the four-section format and states: "Do not include any item that is not in the input. If a section has no input, write 'None this period.'" The human review in Step 6 stays mandatory.

Worked Example: A 6-Person Team's Friday Update, Manual vs Generated

The biggest gain from a structured or generated update is that the easy-to-miss items, customer commitments and blocked dependencies, actually reach the page. The numbers below are illustrative, not measured customer data.

Setup: a 6-person team (PM, EM, three engineers, one designer) on one project, "Billing v2 migration." The update goes to leadership and customer success every Friday.

Manual pass

SourceApprox. time
Slack channel and threads25 min
Jira board and ticket history20 min
GitHub merged and open PRs15 min
3 meeting notes + 2 customer call notes20 min
Chasing two people for missing context15 min
Drafting and formatting25 min
Total≈ 2 hours, posts Friday afternoon

Method-driven pass (saved queries and the template, no AI): about 45 minutes, mostly collection and review.

Generated pass (AI drafts from the same sources): about 15 minutes of review and edits.

The resulting update

Status: At risk. The staging dry run depends on a schema change blocked on the platform team (owner: EM). Two customer calls this week flagged annual-plan proration as a must-have (owner: PM).

Now: Invoice export endpoint in progress. Proration logic in code review.

Done: Stripe webhook handler merged to main. Decision to drop the legacy CSV export, made in Tuesday's sync.

Next: Migration dry run on staging. CS enablement doc.

Decisions needed: Slip one week, or ship without annual proration?

The decision the update forced

The At-risk flag makes the trade-off explicit. Option A slips the date by one week to include annual proration. Option B ships on time without it and handles affected annual accounts manually. The PM chooses B and names a CS lead as owner of the manual workaround, with a follow-up ticket for proper support in the next cycle. That decision is the real output of the update. The summary was just the input.

The takeaway: the 105 minutes saved matter less than what reached the page. The customer-call signal and the blocked dependency were the two items most likely to be missed in the manual version. Call notes are skimmed last, and the platform team's blocker lived in a Slack thread outside the project channel.

Common Mistakes

Most broken status updates fail on format discipline and missing judgment, not missing data.

  • Changing the format every week. Updates become impossible to compare week over week, and impossible to automate.
  • Reporting activity instead of outcomes. Ticket or PR counts with no link to the milestone are output, not outcome, a distinction product leaders like Marty Cagan stress. A good Done line names the milestone it moved.
  • A status color with no reason sentence. Without a reason, yellow is noise and green is a guess.
  • Posting AI drafts unreviewed. Models summarize what was said, not whether it was true. They will repeat an optimistic claim from a meeting as fact.
  • Decisions made in DMs or hallways. No tool, including ours, can capture what was never written or recorded. This is a process fix, not a software fix.
  • Undefined scope. Pulling every ticket with a label drags unrelated work into the update and buries the signal.
  • Updates nobody acts on. If no decision or ask is ever attached, readers stop reading. End every update with "Decisions needed" or "Asks."
  • Too long. Past one screen, readers skim the Status line only. Bad news doesn't improve with age, so if Status is At risk or Off track, put it first.
  • Making "At risk" expensive. If leaders treat yellow as failure, writers hide it. Treat it as an early warning and require a named owner, and updates get honest earlier.

When You Need Tooling (and Which Tools)

The manual method works well for one or two projects per owner. At three to five it costs about half a day a week. Past five, the update is either late or wrong. Collection time scales with sources multiplied by projects, and owners under pressure start skipping sources, usually call notes and Slack first. Gartner predicted in 2019 that by 2030, 80% of today's project management work, including data collection, tracking and reporting, would be eliminated by AI. Treat that as a prediction, but note which tasks it names: collection and reporting, not judgment.

Other signs you need tooling:

  • The update regularly posts a day late.
  • Stakeholders ask questions the update should have answered.
  • Commitments made on customer calls are missing from Next.
  • You want daily updates but can only afford weekly.

A sign you do not need tooling: one project, a small team, and the update takes under 30 minutes. Keep the spreadsheet.

1. BuildBetter — Best for drafting status from calls, Slack, tickets and code together

BuildBetter generates the Now / Done / Next / Status draft from customer calls, Slack, tickets and code in one pass. That matters because customer-call commitments and meeting decisions are the sources most often skipped. The flow: Projects → Status update → pick scope and window → Generate → Copy for Slack. For daily updates, BoB, the BuildBetter assistant, runs a "project pulse" Loop that posts Now/Done/Next/Status to the project each evening. Calls come in through Recordings, Slack through the Slack integration, and promised follow-ups can be tracked with Tracked Objects. Caveat: it drafts from what was recorded or written, so decisions made off the record still need a human.

2. Range

Check-in based async updates where each person writes a short status. A better fit if you want human-authored updates rather than inferred ones.

3. Status Hero

Async standups combined with activity pulled from connected work tools. Good for teams organized around daily standups.

4. Geekbot

A Slack-native standup bot that asks each person questions on a schedule. Lightweight and quick to adopt, but it depends on people answering.

ToolHow updates are producedBest when the pain is
BuildBetter (recommended)Inferred from calls, Slack, tickets and codeCollecting across many sources and projects
RangeHuman-written check-insWanting authored, reflective updates
Status HeroStandup answers plus tool activityRunning daily standups async
GeekbotScheduled questions in SlackGetting people to report at all

Selection rule: choose an inferred-from-sources tool like BuildBetter when the pain is collection across calls and code. Choose a question-based tool when the pain is getting people to report.

FAQ

How do you keep a project up to date automatically?

Use a fixed format (Now, Done, Next, Status), map each section to a source system, collect from those sources with saved queries on a set cadence, and have one named owner review before posting. AI can automate collection and drafting, but the review stays human.

What should a project status update include?

Four parts: what is in progress now, what was completed or decided, what is committed next, and an overall status (On track / At risk / Off track) with a one-sentence reason and named risks with owners. End with any decisions needed or asks.

Can AI write project status updates accurately?

AI can draft accurate updates from merged PRs, ticket changes and meeting transcripts, but it reports what the sources say, not whether it is true. It can also repeat optimistic claims from meetings. A 10 to 15 minute human review is required before posting.

How often should project status updates be sent?

Weekly to stakeholders and leadership. Daily updates are useful for the team itself, but only if they are generated rather than written by hand. Otherwise the cost outweighs the value.

When is manual status reporting no longer enough?

Manual updates work for one or two projects per owner. At three to five they cost around half a day a week. Past roughly five they become late or incomplete, because collection time grows with every project and source.

What is the difference between a status update and a standup?

A standup is each person reporting their own work to coordinate the day; the 2020 Scrum Guide keeps it to a 15-minute timebox for developers. A status update is the project-level view of progress, decisions, risks and next commitments, written for stakeholders.

Sources and Further Reading

Make churn optional.

The items most likely to fall out of a status update, such as what a customer asked for on a call, what was promised and what got blocked, are the same items that turn into churn when they go missing. BuildBetter connects customer calls, tickets and Slack with your team's code and project work, then drafts the update so your review time goes to decisions. Book a demo.