Browse the docs

Results and analytics

Learner history and AI summaries

Look up one learner, read every simulation attempt and evaluator result they have, generate an AI summary, and export their attempts.

Plans: All plansView as Markdown
On this page

The Learners page lists the learners your simulations and evaluators have identified and shows everything one learner did across the workspace: every simulation attempt and every evaluator result, with the outcome of each. From the same page you can generate a short AI summary of a learner's results and download their attempts as CSV. It is available on every plan, to everyone in the workspace who is allowed to see learner identity.

Before you start

  • Learners appear here only when attempts carry a learner identifier. Turn on learner identity and decide how the identifier is collected first. See Collecting learner identity. Evaluator submissions are listed when they arrive with a learner identifier. Anonymous attempts are never listed on this page. For evaluators, see Evaluators, scoring learner-submitted work.
  • You need permission to see learner identity. Owners and admins always have it. In an organization workspace, other members have it only when Learner identity visibility on Settings → Data & privacy is set to All workspace members. A member without it does not get the Learners button on the Results page, and opening the page directly shows Learner identity is limited with a Back to Results button. Nothing is shown in a masked form: the list, the history, the summaries and the exports are all refused for that member.
  • A summary uses credits, so the workspace needs a credit balance to generate one. See Credits, usage and low-credit alerts.

How learners are identified and grouped

  • A learner is one identifier, exactly as it was recorded. Attempts are grouped by exact match, so two spellings of the same person, or the same name in different letter case, are listed as two learners. Passing a stable ID from your course or LMS avoids this.
  • The list covers the active workspace only. Switching workspace reloads the page for the new workspace.
  • A simulation attempt is counted when the learner sent at least one message or, in voice, spoke at least once. A voice session that connected but in which the learner never spoke does not count. Opening a simulation without taking a turn does not count.
  • An evaluator counts once it has produced a final result. Each final result is one row. Stage submissions that were stored but not yet scored are not listed.
  • Test runs are left out, for simulations and for evaluators. When a dropped voice session was resumed, the resumed session is listed and the session it replaced is not.
  • The page covers simulations and evaluators, as its heading says: "Every attempt for a learner, across simulations and evaluators." Coach sessions are not listed here.

Steps

  1. Open Results → Learners. You can also select Learners at the top of the Results page, or select a learner's identifier in a simulation's attempts table to arrive with that learner already selected.
  2. Find the learner in the Learners list on the left. Type part of the identifier in Search learners… to narrow it. The search matches any part of the identifier and ignores letter case. The list shows 25 learners per page, most recently active first, with Prev and Next below it.
  3. If the workspace has list-type identity fields, use the dropdowns above the list to keep only learners with a given value, for example one role or one location. The filter compares against the most recent values recorded for each learner. Text fields cannot be filtered.
  4. Select the learner's row. The right side changes to Attempts for followed by the identifier, and the address in your browser now includes the learner, so you can bookmark it or send it to a colleague who is allowed to see learner identity.
  5. Select an attempt's row to expand it. Select it again to close it.
  6. Select Clear to go back to no selection, or Refresh at the top of the page to reload the list, the history and the summary.

Result

You see the learner's simulation attempts and evaluator results in one list, newest first, 25 per page.

In the Learners list, each row has:

  • Learner: the identifier.
  • One column per workspace identity field, showing the latest value recorded for that learner.
  • Sims: the number of simulation attempts.
  • Evals: the number of final evaluator results.
  • Last activity: the date of the learner's most recent attempt or evaluator result.

In the attempts table, each row has:

  • Started: when the attempt began, in your browser's time zone. For an evaluator result it is when the learner's evaluator session was created.
  • Activity: the name of the simulation or evaluator.
  • One column per workspace identity field, showing the value recorded with that attempt.
  • Type: "chat sim" for a text attempt, "voice sim" for a voice attempt, or "evaluator".
  • Duration: the measured length of the session as minutes and seconds. For voice it is the length of the call when the call length was recorded; otherwise it is worked out the same way as for text. For text it runs from the start of the attempt to its reported end, or to the last message when no end was reported. Evaluator results have no duration and show a dash.
  • Status: Completed when the attempt has ended, otherwise Not completed. An evaluator result is always Completed.
  • Result: Pass or Fail with the score as a percentage, Not scored when the attempt was evaluated in feedback-only mode, or a dash when the attempt has no evaluation. When a person has reviewed a scored evaluation, a Reviewed tag is added next to Pass or Fail, and a reviewer's adjusted result and score replace the AI's. A reviewed attempt that shows Not scored has no tag.

An expanded attempt adds:

  • Session id, the identity field values and Duration.
  • Wrap-up: for a simulation attempt whose session also has an evaluator submission, the time from the end of the simulation to the first final submission to that evaluator. Otherwise a dash.
  • Ended, for a simulation attempt: the time it ended.
  • Combined, for an evaluator result: the combined pass or fail and score when the evaluator is linked to a simulation and the session has a final combined result. Otherwise a dash.
  • Criteria: each criterion with its rating, the points earned out of the points possible, and the reason given by the evaluation.
  • Deductions: only the deductions that were applied, with the points lost and the reason.
  • Feedback: the written feedback from the evaluation.
  • Review note: the reason given with the most recent override, when a reviewer has overridden the result. A note left when marking an attempt reviewed without changing it is not shown here.
  • A link that opens the metrics of that simulation, or the evaluator.

An attempt without an evaluation shows "No evaluation for this attempt." in place of these sections. When a simulation attempt was evaluated more than once, the latest evaluation is shown. Human reviews of evaluator results are applied the same way as reviews of simulation evaluations.

If nothing has been identified yet, the page shows No learner identifiers yet. If a search or filter matches nobody, the list shows "No learners match." and the search and filters stay on screen.

AI summary of a learner

The Summary card above the attempts table writes a short handoff note about the selected learner: where they stand, what they did best and what to keep working on. Anyone who can open the Learners page can generate one. Summaries are only created when someone asks for one. Nothing is generated automatically.

To generate a summary:

  1. Select the learner.
  2. Choose the length in the card: Concise or Detailed.
  3. Check the estimate next to it, shown as "About" followed by a number of credits. The estimate changes with the length and with how much evaluation data the learner has.
  4. Select Generate summary. When the learner already has a summary the button reads Generate new summary.

The two lengths:

  • Concise: one sentence on where the learner stands, a single strength, and up to 3 things to work on.
  • Detailed: one sentence on where the learner stands, up to 2 strengths and up to 5 things to work on, most important first.

What the summary is written from:

  • The learner's most recent 100 attempts in the workspace, simulation attempts and evaluator results counted together. When the learner has more, the card says how many attempts there are and how many the summary covers. Older attempts are left out entirely.
  • For each simulation and each evaluator: the date, result and score of every attempt, the weakest of the criteria still below full credit on the latest evaluated attempt, a limited number of the criteria fully met, the deductions applied, the start of the latest written feedback, and the reason given with a reviewer's latest override. Long text is shortened before it is sent. Reviewers' adjusted results and scores are used in place of the AI's.
  • Conversation transcripts are not used.
  • The learner's identifier and identity field values are not sent to the AI. The summary calls the person "the learner". An observation that applies to one simulation or evaluator ends with its name in square brackets.

The learner needs at least one evaluated attempt. Without one, the button is disabled and the card shows "No evaluated attempts to summarize yet."

Reading a saved summary

Each summary is saved for the workspace, so everyone who can open the Learners page sees the same summaries. Above the text, the card shows the date it was generated, the email of the person who generated it, the length, the credits charged, and how many attempts it covers and through which date. Copy summary copies the text as plain text.

A summary is never updated after it is written. The card tells you whether it is still current. The line appears under the text when nothing has changed and above the text when something has:

  • "No new attempts since this summary." means the learner has no new attempts, no attempt was evaluated or reviewed for the first time, and no override changed an adjusted result. An attempt that was evaluated again does not change this line.
  • A count of new attempts since the summary means the learner has attempts that started after the newest one it covers.
  • "Attempt results or reviews changed since this summary." means there is no newer attempt, but something else differs: an attempt was evaluated or reviewed for the first time, an override changed an adjusted result, an attempt was deleted, or the workspace's AI scoring setting changed.

To bring it up to date, select Generate new summary. This writes a new summary and charges credits again. Older ones stay available under Earlier summaries, which holds up to the 20 most recent summaries for the learner, counting the latest.

Credits

  • A summary is one AI request, charged for the AI usage of that request. The amount actually charged is shown on the saved summary and can differ from the estimate.
  • Before the request, devlin.ai holds more credits than the estimate, enough to cover the longest summary the AI could write. If the balance cannot cover that hold, nothing is generated or charged and the card shows "Not enough credits to generate a summary. Add credits and try again." This can happen with a balance slightly above the estimate.
  • If the request fails before the AI answers, the whole hold is returned. If the AI answers but the answer cannot be used or saved, the AI usage is still charged and the card shows "The summary could not be generated. Please try again."
  • On Settings → Credits & Billing, the charge appears as Learner summary when you expand that day's usage.
  • One person can request up to 30 summaries per hour, counting requests that failed. Past that, the card shows "The summary could not be generated. Please try again." until the hour has passed.

When AI scoring is disallowed

When the workspace disallows AI scoring on Settings → Data & privacy, summaries are still available, but they are written without scores. The pass and fail results, percentages, rating labels and points recorded for each attempt are removed before anything is sent to the AI, including for attempts that were scored before the setting was turned on, and the AI is told to describe the learner through demonstrated skills only. Written feedback, the reasons given for criteria and deductions, and reviewers' reasons are sent as they were written, so a score mentioned inside that text is not removed. A summary generated earlier keeps its text, and is marked as changed so you know to generate a new one. If devlin.ai cannot read the setting, no summary is generated.

Without the workspace setting, when none of the learner's evaluated attempts has a pass or fail result, the AI is given the same instruction not to mention pass, fail, scores, points or percentages. In this case the criterion and deduction points are still part of what is sent.

Retention

If the workspace has a retention window, a summary is removed automatically when the oldest attempt it was written from passes the window, or when the summary itself does, whichever comes first. The card shows the removal date under each summary. Without a retention window, summaries are kept. See Data privacy, retention and learner data requests.

Export a learner's attempts

With a learner selected and at least one attempt listed, two downloads appear above the attempts table:

  • Export attempts CSV: one row per simulation attempt and per evaluator result, oldest first. The columns are learner_identifier, one column per identity field headed by the field's label, activity, type, session_id, started_at, ended_at, duration, duration_seconds, wrap_up, wrap_up_seconds, status, result, score_percent, combined_result, combined_score, reviewed, adjusted_result, adjusted_score_percent, review_reason, criteria, deductions, feedback, latest_summary and latest_summary_date.
  • Export criteria CSV: one row per criterion and per deduction for each attempt, oldest attempt first, with the rating, points earned, points possible, points deducted and the reason. Attempts without an evaluation add no rows. This layout pastes into a vertical checklist.

How the files behave:

  • The export contains all of the learner's attempts, not only the page on screen, up to 10,000 attempts.
  • In the attempts file, result is "pass", "fail", "not_scored" for a feedback-only evaluation, or empty when there is no evaluation. result and score_percent are the AI's values. A reviewer's change is in adjusted_result and adjusted_score_percent.
  • status is "completed" or "uncompleted". Dates are in UTC.
  • type is "chat sim", "voice sim" or "evaluator". On an evaluator row, ended_at is when the result was produced, the duration columns are empty, and combined_result and combined_score carry the combined outcome with a linked simulation when there is one. On a simulation row the combined columns are empty, and wrap_up and wrap_up_seconds are filled only when the session has a final evaluator submission.
  • latest_summary repeats the learner's most recent saved summary on each of their rows, with its date in latest_summary_date. Exporting does not generate a summary.
  • The file name contains a short code instead of the learner's identifier. The identifier is inside the file.
  • Text that starts with a formula character is prefixed so a spreadsheet opens it as text.

Columns opens Attempts CSV columns, where you check the columns the attempts file should include and select Save. The choice is saved in your browser for the workspace and applies to the attempts file only. The criteria file always has the same columns.

Export every learner who matches a filter

When an identity field filter is set and no learner is selected, the buttons become Export filtered attempts CSV and Export filtered criteria CSV. They download the simulation attempts and evaluator results of every learner in the workspace in one file, limited to attempts recorded with the filtered value, up to 10,000 attempts. Two details to know:

  • The file is filtered by the value recorded with each attempt, while the list on screen is filtered by each learner's most recent value. A learner whose value changed can be in the list with only some of their attempts in the file.
  • The file also includes attempts that carry the filtered value but no identifier. Those rows have an empty learner_identifier.

For the other CSV and data exports, see Exporting results, transcripts and evaluations.

Export or delete everything for a learner

Owners and admins see All data for this learner under the selected learner's attempts. Download all data downloads everything recorded under that identifier as one file, and Delete all data permanently removes it after you type the identifier to confirm. After a deletion the page returns to no selection and says how many attempts and evaluator sessions were removed. Other members do not see this section. For what is included, see data privacy and retention.

AI tools over MCP

Learner summaries are generated only on this page. An AI tool connected through the MCP server cannot generate one.