How to administer the Early Grade Reading Assessment (EGRA) using SurveyCTO

View this article as a logged in user (if you're not a user now, start an account for free) and click on the "Follow" button in the top right to get updates about EGRA resources on SurveyCTO.

If you're an educator and/or do research on education outcomes, you're probably familiar with the Early Grade Reading Assessment (EGRA). SurveyCTO's field plug-in support has allowed for the development of an EGRA solution. While EGRA data collection was possible using SurveyCTO before now, it required the use of a stopwatch for timing activities. Timing of activities, and several other helpful functionalities are now available through the timed-grid-test field plug-in, to help you easily and consistently administer EGRA assessments. You can now administer this important education assessment without compromise, while taking advantage of SurveyCTO's data quality and security features.

This EGRA solution was developed in partnership with expert EGRA implementers at Room to Read.

See the above overview video to get an idea of what EGRA looks like on SurveyCTO. The buttons in the field plug-in for EGRA have changed, so do not look exactly how the buttons you see in the video look, but the video is accurate otherwise.

Supported EGRA subtasks

EGRA is made up of a number of standard subtask types. This resource deals with the following EGRA subtasks:

  • Letter identification
  • Familiar word reading
  • Nonword reading
  • Oral reading fluency with comprehension 

See the EGRA documentation for details on these subtasks. The timed-grid-test field plug-in is based on these specifications. 

A non-standard EGRA test which is sometimes included is the "sentence choice" subtask (discussed here), which is facilitated separately by the timed-field-list field plug-in (see the section below).


 A screenshot of the button grid for the nonword subtask.

Deploy the workflow now!

Click below to view this workflow in the Hub and install it on your server.

Install EGRA now
Advanced users can find the sample workflow files in this folder. For help with manual deployment, check out our support article Deploying form definitions and server datasets.

Controls for EGRA subtask administration

The field plug-in uses icons on buttons in place of words to represent actions. Icons are a good option because they provide a language neutral representation, reducing the need for translations. The following button controls are available:




Start - used to start a subtask. It is replaced with a timer once clicked.


Finish - used to mark a complete subtask. When clicked, the timer stops and it triggers a prompt to select the last item and end the task. 


Next - used to page forward when using a small screen.


Back - used to page backwards when using a small screen.


Pause - used to pause a task. Available when the pause parameter is set to 1.

Assessors will listen to students attempt each item in the list of items, moving left-to-right, marking only the incorrect items. Omission / non-selection indicates that an item has been correctly attempted.

If you want to administer EGRA in a right-to-left language, please contact us as below.

Workflow components

This workflow has 1 form. Below, you can find the corresponding files and main purposes.

Workflow Component Files
Click on the section to access the files.
Name Sample form - Early Grade Reading Assessment (EGRA)

Definition: Sample Form - Early Grade Reading Assessment (EGRA)

Field plug-ins: timed-grid-test, timed-field-list, timed-choicetimed-advanced

Description This form showcases EGRA in SurveyCTO. It has been designed based on an example EGRA assessment in English, shared by Room to Read.

Operation and customization options

While the timed-grid-test field plug-in provides an EGRA-compliant execution of timed subtasks, there are a few options available to customize subtasks to your situation. The options you have are facilitated through field plug-in parameters which allow you to customize and limit how EGRA subtasks are administered.

Read the field plug-in README for a thorough understanding of your options. The most essential concepts are discussed below. Most of what you'll read about is exemplified in the video, above.

Small vs. larger screen devices

The timed-grid-test field plug-in has been optimized for small and large screens, offering different navigation options. By "larger" screens, we mean devices from 7" tablets (like the Google Nexus) and larger. On larger screens, the full subtask should appear on one screen.

On "smaller" screens (most phones, excluding some phablets) subtasks will be paginated (divided across multiple screens). Assessors can navigate between screens using forward and back buttons, represented using arrows.

For greater customization, you can use the type parameter with an integer to specify the number of columns and use the page-rows parameter to specify the number of rows on each screen.

Early ending rule

Some EGRA tests are accompanied by an early ending rule where if the first 5 or 10 items in the first row are all marked incorrect, the test ends prematurely. The timed-grid-test field plug-in will prompt assessors to end early in these circumstances. 

Choose a non-default number of incorrect items using the end-after parameter (end-after = 0).

Mark a full row incorrect

In order to help assessors quickly respond to situations where students are struggling and skip whole rows, it is possible to mark a full row of letters, words, or nonwords as incorrect. Doing this has steps:

  1. Tap on the row number in the grid. The row number will change to a question mark - this is a warning, asking whether you're sure.
  2. Tap again on the question mark to mark the whole row incorrect.
  3. If you made a mistake, tap a third time to undo.

If you finish early

To finish a subtask early before the time runs out, simply tap on the "finish" button in the bottom right (see the button with the checkmark). You would need to double-confirm finishing early for safety's sake. When you do, the test is final and you'll be prompted to pick the "last attempted item".

You can customize the behavior of the finish button using the finish parameter.

If time runs out

If time runs out before the student is finished, a pop-up will appear, asking the assessor to pick the "last attempted item". You can select a different item as the last item if you make a mistake.

Picking the last attempt is important for scoring, working out how many correct items per minute were identified inside elapsed time.

Strictness of the subtasks

For comparability, each test should be administered as consistently as possible, within the same time limit, without any flexibility. However, we have added an experimental feature that allows making selections after the time has run out. The rationale is that while we can all listen reliably at a child's speaking pace, not all assessors will react fast enough toward the end to mark one or two final items incorrect if the timer running out doesn't allow this. In fact, this is the default behavior but can be turned off by using the strict parameter (strict = 1).

Choose to make a subtask less flexible when the time runs about by using the strict parameter (strict = 1). 

Pausing a subtasks

Also in the vein of being less strict, there is the option to allow for pausing subtasks. This is not the default behavior, but if you feel it would be helpful (during training, or to compensate for environmental interruptions), it is possible to allow pausing. If you do, a "pause" button will appear alongside the timer at the top of the screen. 

Choose to allow pausing using the pause parameter (pause = 1).

Executing the sentence choice subtask

The timed-field-list field plug-in works with both select_one and select_multiple fields. Similar to timed-grid-test, it also needs a prepared list of sentences, but those are formatted differently (see the sample form attached to this article and field plug-in repository for details). The timed-field-list field plug-in has many parameters; for an authoritative rundown of these, see the wiki.

Tip: Preparing your own item lists easily

The timed-grid-test field plug-in is built on top of the select_multiple field type. In order to administer one of the subtasks it facilitates, you will need to provide the list of items used for the grid, or the passage of text in a choice list used by that select_multiple field.

Prepare choice lists quickly from grids of items using the formulas in this spreadsheet template.

Feedback from you

We would love to hear your feedback. Please write to and we'll get back to you.



Please sign in to leave a comment.