Blackboard program health dashboard for department chairs

See how every section in the term is really doing, with class averages shown next to how much has actually been graded, and no instructor screenshots needed.

App
BlackboardGoogle SheetsOperationsAI ReportsResearch & Monitoring
PromptCreate

Build me a program health dashboard for Blackboard that department chairs and program directors open each week to see how every section in the current term is actually performing, without asking instructors for screenshots or exports.

The landing view is a sortable table of the term's courses, pulled with Get Courses and filtered to the term I select. Each row is one section with a computed health summary: the class average across graded work, the share of assignments that have already been graded, and the count of submissions still sitting ungraded. Let me sort by any of those columns so the sections in trouble float to the top, and let me search the table by course name or code.

Build each row from the gradebook. For a course, Get Grade Columns lists the assignments, Get Column Grades returns the scores recorded against a column, and Get Column Attempts shows the submissions and their grading status, so an attempt that has been submitted but not yet scored counts toward the ungraded backlog. Compute the class average over graded scores only, normalized against each column's possible points, so assignments worth different amounts do not distort the number.

Never show an average as a bare number. Every average needs its graded coverage sitting next to it, and when a section has almost nothing graded yet, the row should say so rather than implying the class is struggling. Sections below a small coverage floor, for example fewer than a couple of graded assignments or under a low percentage of graded work, render as not enough graded yet with the average de-emphasized, and they must not be ranked among the worst performers when I sort by average. Make that coverage floor a setting rather than a hardcoded number.

Clicking a section opens a detail page. Show each assignment in that course with its grade distribution, built from Get Grade Column for the column definition and Get Column Grades for the scores, so I can tell whether a low average comes from one brutal assignment or a broad slide. Below that, list the enrolled students from Get Course Memberships whose running score sits below the passing threshold I set in the app, showing each student's current score and how many pieces of work they are missing. Expanding a student row calls Get User Grades so I can see how that person is doing across their other courses too, which tells me whether it is this section or a wider problem.

Give me a button that writes the current snapshot to a Google Sheet with Append Values: one row per section carrying the term, course name and code, class average, graded coverage, ungraded count, number of students below the threshold, and the snapshot date. Appending rather than overwriting is the whole point, so we can track section performance week over week and share the tab with the dean. Let me pick the spreadsheet and tab, and remember that choice.

Store the passing threshold, the coverage floor, the term filter, and the snapshot destination per user, so each chair sees their own settings when they open the app and those choices are still there the following week.

Be careful with Blackboard's request budget. The site quota is 10,000 requests per 24 hours, so the landing view should load the course list first and pull per-assignment detail only when I open a section, instead of walking every gradebook up front. Blackboard list endpoints page with offset and limit and return a paging.nextPage link, so follow that until it is absent when a course list, roster, or grade list runs long. Render section rows as they resolve rather than blocking the whole table on the slowest course, and let me refresh a single section without reloading everything.

What does this prompt do?

  • Lists every course in the term you choose with its class average, how much of the work has actually been graded, and how many submissions are still waiting on a grade.
  • Sorts so the sections that need attention rise to the top, and clearly flags the ones where too little has been graded for an average to mean anything yet.
  • Opens any section to show how scores are spread across each assignment, plus the enrolled students running below the passing mark you set.
  • Saves a weekly snapshot to a Google Sheet so you can watch sections move over the term and share the tab with your dean.

What do I need to use this?

  • A Blackboard login that can see grades for the courses you oversee
  • A Google account and a spreadsheet to hold the weekly snapshots, if you want the export
  • The term you want to review and the score you treat as passing

How can I customize it?

  • Set your own passing threshold and change it whenever the standard shifts
  • Adjust how little grading counts as too early to judge a section
  • Point the snapshot at a different spreadsheet or tab, and choose which columns get saved

FAQs

Do instructors have to send me anything?
No. The dashboard reads the gradebooks you already have access to in Blackboard, so nobody needs to export a report or send you a screenshot.
Will a section that has barely been graded look like it is failing?
No, and this is the point of the design. Every average is shown next to how much of the work has been graded, and a section with almost nothing graded yet is labeled that way rather than ranked as a poor performer.
Can I see how a struggling student is doing in their other classes?
Yes. Open a student from the section view and you get their scores across the other courses they are enrolled in, which tells you whether the problem is this one class or a wider pattern.
Does this change anything in Blackboard?
No. It only reads from Blackboard. The one thing it writes is a row in the Google Sheet you pick when you save a snapshot.
Can two chairs use it with different passing marks?
Yes. The passing threshold and the term filter are saved for each person, so every chair opens the app with their own settings already applied.

Related templates

Review desk for portal forms your team still fills in by hand

Stage a batch of filings overnight, then approve each completed form from a screenshot before anything is ever submitted.

Kernel
Google Sheets
Slack Bot
App
Audit what Intercom's Fin AI actually resolved before you pay

Review every conversation Fin closed as resolved, judge which ones actually stuck, and see what the gap is worth against your bill.

Intercom
Google Sheets
Slack Bot
App
Returns and warranty claim desk that follows your policy

Work every return, damage and warranty claim in one queue, with the order, the delivery date and a policy-backed recommendation already on screen.

Kustomer
Shopify
Google Sheets
App
Turn last week's cafe sales into this week's grocery order

See exactly which ingredients next week needs based on what you actually sold, adjust anything by hand, then build a one-click grocery cart.

Instacart
Square
Google Sheets
App
Benchmark your Instagram account against rival brands

See follower growth, posting cadence, format mix and engagement rate for your brand and every competitor you track, side by side on one board.

Instagram
Google Sheets
Google Docs
App
Find the services you're underpricing in your Jobber price book

Open one screen to see how every service in your Jobber price book actually performed: how often it sold, what you charged, and where prices swing.

Jobber
Google Sheets
App

Stop chasing instructors for grade screenshots.

Open one screen each week and see exactly which sections need your attention, with enough context to know why.