Native install

Install ReadingVox in Moodle

You paste one line into Moodle's Additional HTML setting. Every student then gets a listen button with word-by-word highlighting on course content. No plugin to install, no student accounts.

About 5 minutesNeeds: Moodle site administratorWorks in mobile browsersNot in the Moodle app

Before you start

  • Moodle site administrator access (you can open Site administration). Course and category managers can't change Additional HTML.
  • A ReadingVox Institution plan or pilot. Start a free 30-day pilot from Institution pricing.
  • Your Moodle address, for example moodle.yourschool.edu (the address students see in their browser).
  • Hosted Moodle? Some hosting providers limit which admin settings you can change. If you can't see Additional HTML, ask your host whether it can be enabled or edited for you.

Additional HTML applies to the whole site

Moodle's Additional HTML setting is site-wide, so ReadingVox appears in every course at once. There's no per-category option.

Install steps

  1. Step 1: Copy your Moodle snippet from the ReadingVox dashboard

    Sign in at readingvox.com/dashboard and open Billing. In the Add ReadingVox to your LMS card, choose Moodle, enter your Moodle address, and copy the snippet. It contains a key that only works on that address.

    The snippet looks like this (yours has a full key in place of rv_live_…):

    Moodle snippet
    <script src="https://readingvox.com/widget.js" data-key="rv_live_…" data-preset="moodle" async></script>
  2. Step 2: Open Additional HTML in Moodle

    In Moodle, go to Site administration → Appearance and click Additional HTML (in the Appearance list). You can also type “Additional HTML” into the Site administration search box.

    moodle.yourschool.edu/admin/search.php#linkappearance
    General
    Users
    Courses
    Grades
    Plugins
    (Step marker 1)Appearance
    Server
    Reports
    Development

    Themes

    Navigation

    (Step marker 2)

    Additional HTML

    Templates

    1. Marker 1: The Appearance tab in Site administration.
    2. Marker 2: Additional HTML, in the Appearance list.

    Illustration — your screen may look slightly different.

  3. Step 3: Paste the snippet into “Before BODY is closed” and save

    Paste the snippet into the Before BODY is closed box. If something is already there, add ours on a new line at the end; don't delete what's there. Click Save changes.

    moodle.yourschool.edu/admin/settings.php?section=additionalhtml

    Additional HTML

    Within HEAD
    (leave as is)
    When BODY is opened
    (leave as is)
    (Step marker 1)Before BODY is closed
    <script src="https://readingvox.com/widget.js" data-key="rv_live_…" data-preset="moodle" async></script>
    (Step marker 2)Save changes
    1. Marker 1: Before BODY is closed: paste the snippet here (on a new line if there's already code).
    2. Marker 2: Save changes.

    Illustration — your screen may look slightly different.

    Use the last box, not the first

    Pasting into Within HEAD or When BODY is opened may load ReadingVox before the page content exists. Always use Before BODY is closed.
  4. Step 4: Purge caches if it doesn't show up

    Moodle caches its theme output. If the button isn't there after a reload, go to Site administration → Development → Purge caches and click Purge all caches.

    moodle.yourschool.edu/admin/purgecaches.php

    Purge caches

    Purging all caches can briefly slow the site while caches rebuild.

    (Step marker 1)Purge all caches
    1. Marker 1: Purge all caches. Best done outside peak hours on a large site.

    Illustration — your screen may look slightly different.

Check that it works

  1. Open a course and view a Page, Book, or the course main page. To see what students see, use a test student account or Switch role to… → Student from the user menu.
  2. Look for the ReadingVox button in the bottom-right corner. Press it, then press play. Words are highlighted as they're read.
  3. Open the Grades page. There should be no ReadingVox button there; that's expected.

ReadingVox reads the main course content area only. It skips grades, messages, user profiles, site administration, and editing pages.

Phones and tablets: it works when Moodle is opened in a mobile browser. It doesn't run inside the Moodle mobile app.

Troubleshooting

The ReadingVox button doesn't appear

  • Caches. Purge all caches (step 4), then reload with Ctrl+Shift+R (Cmd+Shift+R on a Mac).
  • Wrong box. The snippet must be in Before BODY is closed, and you must click Save changes.
  • Address doesn't match. The key only works on the address you entered in the dashboard. If students reach Moodle on a different address, create a snippet for that address.
  • Custom theme. Moodle's standard themes (Boost, Classic) output Additional HTML. A heavily customized theme might not; ask whoever maintains it.
  • Page type. ReadingVox doesn't appear on grades, messages, profiles, admin, or editing pages, on purpose.
  • Pilot or plan ended. Check the Billing page in your dashboard.

I can't find Additional HTML

You need the site administrator role; course or category roles don't see it. On hosted Moodle, your provider may restrict it. Ask them to add the snippet for you.

It reads with a different, robotic-sounding voice

That's the device's built-in browser voice. ReadingVox switches to it for new sentences when your monthly fair-use cap is reached (during a pilot: 2M characters a month until your first payment). Audio that was already generated keeps playing in the natural voice, students never see an error, and the cap resets monthly. Email [email protected] if you hit it regularly.

A file, SCORM package, or embedded tool isn't read

Files, SCORM/H5P packages, and embedded tools run in their own viewers or frames, which ReadingVox can't read yet. It reads content written in Moodle itself.

Remove ReadingVox

  1. Go to Site administration → Appearance → Additional HTML.
  2. Delete the ReadingVox line from Before BODY is closed (leave anything else that's there) and click Save changes.
  3. Purge caches: Site administration → Development → Purge caches.
  4. Optional: in the ReadingVox dashboard, Revoke the key on the API Keys page, and cancel your plan or pilot on the Billing page.

Data & privacy

What ReadingVox receives

  • The text a student chooses to play, translate, or simplify, so we can turn it into audio.
  • Standard request details: IP address, browser type, and the page address.
  • Your ReadingVox key, which identifies your institution, not the student.

What it doesn't

  • Student names, email addresses, Moodle user IDs, or grades.
  • Anything from grades, messages, profiles, or admin pages. ReadingVox doesn't run there.
  • On Institution plans, the text being read isn't stored in our usage logs.

Sub-processors, retention, FERPA terms, security answers, and documents (DPA, VPAT, HECVAT Lite, W-9).

For IT & procurement

All install guides · Institution pricing

Other install guides

Stuck on a step?

Email [email protected] with your platform, the step you're on, and a screenshot of what you see. We answer every message.

Email support