River
Y CombinatorBacked by Y Combinator
FREE TEMPLATE

Qualitative Coding Template for Interviews

Four documents and three sheets that keep every code tied to its verbatim extract and to the codebook version it was coded under.

Free download  ·  No account needed

Codebook Change Log

Five revisions, and what each one left behind

RevVersionCodeChangeCoded alreadyReconciledDebt
R1v1.1confiscationNarrow34 extracts340
R1bv1.1threat-without-actionAdd9 extracts90
R2v1.1parent-pushback mergedSuperset merge12 extracts120
R3v1.2workaround split in twoSplit47 extracts3116 extracts
R4v1.3enforcement-inconsistencyWiden18 transcripts612 sweeps
R5v1.3phone-as-safety-lineAdd18 transcripts117 sweeps

A split or a narrowing strands extracts. A widening or a new code strands transcripts nobody re-read. The three highlighted rows are still open, and the frequency table knows it.

The pack is four documents and three sheets and one rule. The sheets hold the record. A change log carries every codebook revision with what it did to the coding underneath it. A register carries the verbatim text and the codebook version behind every coded extract, and the frequency table prints the recode debt beside each count. The documents hold the output: the codebook with a near miss on every code, the coding guidance, the method statement and the reflexivity note. The rule is that a frequency is not reported while it carries debt.

Every sheet ships filled in for one illustrative study of 21 teachers interviewed about a whole-school phone ban, its codebook running from v1.0 to v1.3 across five logged revisions. When the code for workarounds was split at v1.2, 47 extracts sat on the parent. 31 were re-read and reassigned, and 16 were not. So the frequency table reports 43 tolerated and 27 concealed, and those two counts describe 70 of the 86 extracts about workarounds, which is 81 per cent of that material.

An ordinary frequency table reports the 43 and the 27 and stops. It has no column for the 16. Nothing in a spreadsheet or a QDA project noticed the definition move underneath them, and a codebook only ever shows its final state. That is why the history has to live somewhere else. Open the pack in River and the debt column is a join between the register and the log. Or download the sheets and run it yourself, starting from transcripts with one speaker label per participant.

Every sheet in the pack

The Codebook Change Log, the Coded Extract Register, the Code Frequency table, and the Codebook.

Codebook Change Log

One row per revision. The two columns nobody keeps are the last two, and they are the only ones that say what the change did to the coding underneath it.

RevVersionCode affectedChangeDirectionCoded at the timeReconciledDebtStatus
R1v1.1confiscationNarrowNarrowing34 extracts340Cleared
R1bv1.1threat-without-actionAddWidening9 extracts90Cleared
R2v1.1parent-pushback into external-pressureMergeSuperset12 extracts120No re-read needed
R3v1.2workaround into tolerated and concealedSplitNarrowing47 extracts3116 extractsOPEN
R4v1.3enforcement-inconsistencyWidenWidening18 transcripts612 sweepsOPEN
R5v1.3phone-as-safety-lineAddWidening18 transcripts117 sweepsOPEN

A merge into a superset is the one change that carries no debt: every extract meeting the narrow definition still meets the broad one. Everything else moves the ground under coding that already happened.

Coded Extract Register

The verbatim and the codebook version sit in the same row as the code. That version column is the field normally left blank, and it is what the debt is computed from.

IDPVerbatim extractCodeCoded underStatus
E0114P02“I’ve got three in my drawer right now. One of them has been there since Tuesday.”confiscationv1.0Re-read at v1.1, still qualifies
E0131P09“I tell them I’ll take it and mostly that’s enough.”threat-without-actionv1.1Moved here from confiscation at R1
E0166P06“Everyone knows they’re on them at break behind the sports hall.”workaroundv1.1SUPERSEDED at the v1.2 split
E0172P05“They pass one round in the toilets. Same one, all lunchtime, like a library book.”workaroundv1.1SUPERSEDED at the v1.2 split
E0233P14“They’ve got a spare in the bag that nobody’s ever found. The one we take off them is the decoy.”workaround-concealedv1.2Current
E0341P19“The ones I worry about are the ones walking home in the dark in January.”phone-as-safety-linev1.3Current

E0166 and E0172 are two of the 16. Both read as workarounds and both are correctly coded against a definition that stopped existing eight interviews ago.

Code Frequency

Every count is a filter on the register. The debt columns are a join against the change log, and the last column is the consequence.

CodeExtractsParticipantsOn a superseded definitionSweeps outstandingReportable
workaround-tolerated4316 of 21160No, debt on the retired parent
workaround-concealed2713 of 21160No, debt on the retired parent
workaround (retired)169 of 21160No, superseded
enforcement-inconsistency5219 of 21012No, lower bound
phone-as-safety-line179 of 2107No, lower bound
confiscation2514 of 2100Yes
threat-without-action97 of 2100Yes
external-pressure3817 of 2100Yes
leadership-pressure3115 of 2100Yes
before-and-after4420 of 2100Yes

43 plus 27 is 70, out of 86 extracts about workarounds. The reported split covers 81 per cent of that material, and a table without these columns reports the 43 and the 27 as though it covered all of it.

Codebook

Five fields per code. The last one is the near miss, the extract that reads like the code and is not it, quoted with the code it actually belongs to.

Fieldworkaround-concealed
DefinitionAn account of students getting around the ban by a route staff do not know about, or did not know about until the incident described.
IncludeSecond handsets, hidden storage, use during permitted absences from the room, and any route the speaker learned about after the fact.
ExcludeRoutes staff see and let go. That is workaround-tolerated.
AnchorP14: “They’ve got a spare in the bag that nobody’s ever found. The one we take off them is the decoy.”
Near missP06: “Everyone knows they’re on them at break behind the sports hall.” Staff know, so this is workaround-tolerated.
HistoryCreated at v1.2 out of the split of workaround. 16 extracts on the parent are still unreassigned.

A definition on its own is agreeable to everybody and applied differently by everybody. A definition sitting beside the specific extract it excludes is testable.

What's in the pack

01

Codebook Change Log sheet

One row per revision, carrying the change, its direction, the transcripts already coded when it landed, and the extracts left on the old definition. A revision with no reason recorded reads at write-up like a change of mind.

02

Coded Extract Register sheet

The verbatim text, the participant, the code and the codebook version in force when the decision was made. That version column costs one keystroke and is what every debt figure is computed from. For coding a study set rather than interviews, the extraction table uses the same discipline.

03

Code Frequency sheet

Each count with its participant spread, the extracts sitting on a superseded definition, and the transcript sweeps still owed. A count with debt against it is marked unreportable rather than quietly published.

04

Codebook

Definition, inclusion criteria, exclusion criteria, an anchor extract and a near miss for every code, plus the history line saying when the definition last moved. The near miss is the field that makes a second coder possible.

05

Coding Guidance

What a second coder needs and nothing more. The unit, the six fields written at the moment of coding, what to do when the codebook does not fit, and why transcripts get coded in a fixed recorded order. Running two coders from it is the setup reliability scoring needs before either one touches a definition.

06

Coding Method Statement

The methods passage generated from the log, covering the codebook's development and what each revision left unreconciled. Reporting standards ask whether coding categories emerged or were developed a priori, which is a question about history.

07

Reflexivity Note

Written from the change log rather than from memory. The codes that got split were defined too broadly at the start, and the codes added late say what the coders were not looking for, which is evidence rather than recollection.

08

A frequency is not reported while it carries debt

The standing space rule every prompt reads first. When a count has debt against it the answer is to clear the debt or to report its size, never to publish the count as though the definition behind it had held still.

How to use it

  1. 1

    Open in River, or download it

    Open the pack in River and the agent builds the codebook and the register with you, or download the three CSV sheets and four Word documents instantly, filled in with the worked example.

  2. 2

    Code with the version field filled

    Every extract gets its verbatim text and the codebook version in force at that moment. It looks like bureaucracy for about a week, until the first revision, and then it is the only thing that helps.

  3. 3

    Log the revision, not just the new definition

    When a code splits or narrows, the log records how many extracts sat on the old definition and how many got re-read. When one widens, it records the transcripts nobody swept. The same discipline runs through a variable codebook.

  4. 4

    Clear the debt, then report

    The frequency table joins the register to the log and marks each count reportable or not. Clear what you can, state what you cannot, and let the method statement be written from the log.

Frequently asked questions

Is this template free?

Yes. Download the whole pack as CSV sheets and Word documents with no signup and no credit card. Edit with AI is a separate, optional path that has the agent build the codebook and the register with you. The template library holds the rest of the packs.

What format are the downloaded files?

CSV for the three sheets and Word documents for the codebook, the guidance, the method statement and the reflexivity note, in one zip. They open in Excel, Numbers, Sheets, Word, Pages and Google Docs with nothing to convert. Inside River the same content opens as live Docs and Sheets.

I already code in NVivo or ATLAS.ti. Does this replace it?

No. Keep coding where you code and export the extract list, then bring the version column and the change log alongside it. QDA software stores which code an extract carries and not which definition that code had at the time, so the debt is invisible in the project file rather than absent from it.

My codebook has changed three times and I recorded none of it. Now what?

Some of it is recoverable. Where the coding itself shows a definition moved, the history can be reconstructed from the register and marked as reconstructed. Where it does not, those extracts cannot be told apart from correctly coded ones without re-reading them, and that number is worth knowing now.

What does a reviewer actually ask about the coding frame?

The reporting checklist for interview studies asks directly whether the authors provided a description of the coding tree and whether themes were identified in advance or derived from the data. A description of the final tree answers neither question, because both are about how it got there.

Does River do the coding for me?

No. Coding is the analysis, and the value of this record is that the judgements in it were made by whoever has to defend them. River builds the codebook with you, holds the register, runs the join that produces the debt, and writes the method statement from what the log says happened.

When do I stop coding and start on themes?

When the change log has been quiet for several transcripts and the debt is cleared. A codebook still moving is a codebook that has not met the data yet. Theme development starts from settled codes, and it counts different things.

Find out what your frequency table is actually counting

Send the transcripts, the codebook in whatever state it is in, and your coding so far. The debt comes back with the counts attached.

Edit with AI