Completion Tracking – Lesson/Quiz Auto-Completion

Estimated reading time: 2 min

NOTE: Go to this article if you face any issue: Completion Tracking Not Working

Completion tracking is the most used feature of GrassBlade xAPI Companion. It can control the behaviour of the “Mark Complete” button available under Lesson/Unit/Quiz and automatically completes it when the user completes the added xAPI Content.

To use completion tracking, you have to add a few triggers in your GrassBlade LRS and then use the completion tracking option in your xAPI Content.

These settings will work similarly with both xAPI and SCORM Content. Follow the step by step guide.


  1. GrassBlade xAPI Companion
  2. GrassBlade Cloud LRS (or GrassBlade LRS)
  3. LearnDash LMS or WP Courseware or LearnPress
If you are not using an LMS, you can still follow the article to send back completion data from the Learning Record Store to WordPress. The scores and completion can be shown to users on the content pages. 

Setup Triggers in GrassBlade LRS

Passed and Completed triggers are enabled by default on GrassBlade LRS. However, make sure it’s enabled, and WordPress URL is configured correctly.

If you want failed statements to also mark the lessons as completed, you will need to create an additional trigger for the failed verb. In GrassBlade xAPI Companion version 1.6 and above, failed or passed will also look at a configured passing percentage to decide completion.

If WordPress URL is:
Trigger URL will be:

If it doesn’t work, try using the WordPress URL as Trigger URL. One or the other may or may not work depending on the theme and plugins you are using on the site.

If you are using a plugin that restricts the entire website including ajax url without login, Triggers may not work. Make sure you include http:// or https:// in the URL.

GrassBlade Completion Tracking
GrassBlade Completion Tracking

Step 2: Add Attempted/Launched Triggers in GrassBlade LRS

(Needs GrassBlade xAPI Companion v1.6.3+ and LearnDash v2.5.8+)

If you want course status to show “In Progress”, as soon as a user starts a content under that course. You can add an additional trigger for the “attempted” verb. You might need to use “launched” or “initialized” verb if that is what your content is sending instead of “attempted” verb.

Please note that the Trigger URL, for this is different from the completion Trigger URLs.

Verb = Attempted
Type = POST to URL
Trigger URL =
(If WordPress URL is:

Step 3: Enable Completion Tracking on your xAPI Content

Go to the xAPI Content Details section in your WordPress. Add or Edit the content you want to enable completion tracking for. Tick the checkbox that says, “Completion Tracking”.

Select completion type as per the requirements to set Advanced Completion Behaviour.

Step 4: Add content to a page

Add your content to the lesson, topic, or quiz using the Gutenberg Blocks or Meta box on the right top of the edit page.

If you want the quiz scores to be passed back to reports, or if you want to award certificates based on quiz scores on xAPI Content (inside Articulate, iSpring, Captivate, etc), you would need to make sure that the xAPI Content is added on a Quiz.

4(a). Adding Content with Available Gutenberg Blocks

To use Gutenberg blocks for adding xAPI Content in your LearnDash lesson, topic or quiz page, you must be using GrassBlade xAPI Companion v2.0.

Step 1: Select xAPI Content Block
Step 2: Select Content to display

4(b). Adding Content with Meta-Box

Step 5: Showing Results to Users

You can show results to users by enabling “Show Results to Users” in your xAPI Content page. See:

After this, users would see the results below the content:

On the Course page, you will see the Quiz, Lesson or Topic where you added the content is now checked and green:

NOTE: Go to this article if you face any issue: Completion Tracking Not Working

Still facing issues, feel free to contact us.

Was this article helpful?
Dislike 0 12 of 12 found this article helpful.

Leave a Reply

Your email address will not be published. Required fields are marked *