---
title: "The FSMA 204 KDE checklist: what to capture at receiving, transformation, and shipping"
description: "Every Key Data Element FSMA 204 requires at each Critical Tracking Event, straight from 21 CFR 1.1340, 1.1345, and 1.1350, translated into the columns a small producer actually keeps."
canonical: https://fsma204hub.com/blog/fsma-204-kde-checklist
published: 2026-07-21
---

# The FSMA 204 KDE checklist: what to capture at receiving, transformation, and shipping

> Every Key Data Element FSMA 204 requires at each Critical Tracking Event, straight from 21 CFR 1.1340, 1.1345, and 1.1350, translated into the columns a small producer actually keeps.

The single biggest source of impressions on this site is people searching what a KDE is. The glossary answer is easy and we have [written it before](/blog/tlc-vs-kde-vs-cte): Key Data Elements are the fields you record about a lot at each Critical Tracking Event. But the producers searching that term are usually not looking for a definition. They are staring at a buyer questionnaire or an FDA fact sheet and asking a much more practical question: **which fields, exactly, at which moment, and where do I put them?**

That is this post. It is the operator's checklist version of the rule, taken straight from the regulation text (21 CFR 1.1325 through 1.1350), organized by the three events a typical small producer actually performs, and translated into the documents you already keep. Print it, tape it to the wall by the receiving door, hand it to whoever fills in the logs.

One framing note before the tables: almost every explainer on this topic is written for ERP and warehouse-system buyers. The lists below are the same law, but mapped to a two-to-ten-person operation where "the system" is a receiving log, a batch sheet, and a stack of packing slips. If that is you, you are the audience.

## The shape of every KDE record

Three things repeat across every event type, and internalizing them makes the tables below feel obvious instead of bureaucratic:

1. **Everything links to a traceability lot code.** The regulation says, for every event, that you must maintain the information "linking this information to the traceability lot." A pile of accurate fields that are not connected to a [TLC](/blog/what-is-a-traceability-lot-code) is not a traceability record. It is trivia.
2. **Location descriptions mean the business, not the truck.** The rule asks for the "immediate previous source **(other than a transporter)**" and the "immediate subsequent recipient **(other than a transporter)**." Your carrier never appears in KDEs. Your supplier and your customer do.
3. **Every event ends with a reference document.** The last KDE in every list is the reference document type and number: the packing slip, the batch sheet, the invoice, the bill of lading that backs the record. This is the KDE producers most often skip, and it is also the one that makes a [24-hour traceback](/blog/mock-24-hour-traceback) survivable, because it tells you which piece of paper to pull.

Now the checklists.

## Receiving: 21 CFR 1.1345

You perform a receiving CTE every time a food on the [Food Traceability List](https://www.fda.gov/food/food-safety-modernization-act-fsma/food-traceability-list) arrives at your facility. For a creamery that is the milk and cultures on the FTL; for a nut butter maker it is the nuts; for a fresh-cut operation it is the produce.

| # | KDE (regulation wording) | In your operation |
|---|---|---|
| 1 | Traceability lot code for the food | The supplier's TLC, from their label or packing slip. Never invent one when the supplier provided one. |
| 2 | Quantity and unit of measure | "200 lb", "6 cases", "4 totes". Unit matters as much as number. |
| 3 | Product description | "Raw goat milk", not "milk". Enough that an investigator knows what the lot is. |
| 4 | Location description for the immediate previous source (other than a transporter) | Your supplier's business name and physical address. The dairy, not the trucking company. |
| 5 | Location description for where the food was received | Your facility. If you have one facility, this column never changes. |
| 6 | Date you received the food | The date it hit your dock, not the invoice date. |
| 7 | Location description for the TLC source, or the TLC source reference | Where that lot's TLC was assigned. Usually the supplier's plant; sometimes a farm further up. Your supplier should provide it, because their own shipping record is required to include it. |
| 8 | Reference document type and number | "Packing slip #4412", "Invoice INV-2081". |

**The exempt-supplier variant almost nobody covers.** Small producers often buy from farms and micro-suppliers that are themselves exempt from the rule. Section 1.1345(b) handles this directly: you keep a slightly shorter list, and **you assign the traceability lot code yourself** if the food arrives without one (retail food establishments and restaurants are excused from assigning it, producers are not). If your walnut supplier is a two-acre farm with no TLC in sight, the rule does not let you shrug. The lot needs a code, and the assigner is you. Our [worked examples post](/blog/how-to-assign-a-traceability-lot-code) shows exactly how to mint one.

## Transformation: 21 CFR 1.1350

You perform a transformation CTE when you turn input lots into a new product: pasteurizing, culturing, mixing, roasting, grinding, cutting, or repackaging. This is the event where a **new TLC is born**, and its record has two halves that must connect.

**Half one, for each input lot you used:**

| # | KDE | In your operation |
|---|---|---|
| 1 | Traceability lot code for the input food | The TLC you captured at receiving. This is the link backward. |
| 2 | Product description for that TLC | "Raw goat milk" again, copied from the receiving record. |
| 3 | Quantity used from that lot | "180 gal of the 200 gal received." Consumption, not receipt. |

**Half two, for the food you produced:**

| # | KDE | In your operation |
|---|---|---|
| 1 | New traceability lot code | The code you assign to the batch. One batch, one TLC. |
| 2 | Location description for where you transformed the food | Your facility (the rule calls this the TLC source, because this is where the new code was born). |
| 3 | Date transformation was completed | Completion date, not start date. |
| 4 | Product description | "Fresh chevre, 8 oz, plain". |
| 5 | Quantity and unit of measure | "42 wheels". |
| 6 | Reference document type and number | "Batch sheet B-0520". |

If you record only one thing with discipline, make it the input-to-output link. FDA's own [tabletop exercise report](https://www.fda.gov/food/food-safety-modernization-act-fsma/fsma-final-rule-requirements-additional-traceability-records-certain-foods) found that only 40% of participating firms kept a properly assigned TLC across every CTE, and the transformation step is where the chain most often snaps. We walked through what that failure looks like on a clock in the [24-hour traceback drill](/blog/mock-24-hour-traceback).

## Shipping: 21 CFR 1.1340

You perform a shipping CTE when a lot leaves your facility to a customer.

| # | KDE | In your operation |
|---|---|---|
| 1 | Traceability lot code | The batch TLC. On the case label and in the record. |
| 2 | Quantity and unit of measure | "12 wheels" of the 42 produced. Partial shipments are normal; each gets its own record. |
| 3 | Product description | Same description that rode the TLC through transformation. |
| 4 | Location description for the immediate subsequent recipient (other than a transporter) | The retailer DC or distributor you shipped to. Not the carrier. |
| 5 | Location description for the location you shipped from | Your facility. |
| 6 | Date shipped | Ship date. |
| 7 | Location description for the TLC source, or TLC source reference | Where the TLC was assigned. For a batch you transformed, that is you. |
| 8 | Reference document type and number | "BOL #88231", "Invoice INV-2119". |

**And here is the clause that explains all the retailer pressure:** 1.1340(b) requires you to **provide KDEs 1 through 7 to the immediate subsequent recipient** of each lot, in electronic, paper, or other written form. The forwarding is not optional politeness, it is a named requirement. When [Wegmans asks for an EDI 856 ASN](/blog/wegmans-supplier-traceability-requirements), when [Costco ties the case label to the ASN](/blog/costco-supplier-traceability-requirements), when [ReposiTrak asks you to populate lot fields](/blog/repositrak-supplier-onboarding-playbook), they are operationalizing this exact paragraph. The retailers did not invent the ask. They chose the format.

## The upstream events you mostly inherit

The rule defines more CTEs than the three above: harvesting, cooling, initial packing of raw agricultural commodities, and first land-based receiving of seafood (21 CFR 1.1325 through 1.1335). Most small manufacturers never perform these. What you need to know is narrower:

- **If you buy packed FTL produce or seafood, those upstream KDEs arrive with the lot** through your supplier's records and your receiving record's "TLC source" field points back at them. You do not recreate farm records; you keep the thread to them intact.
- **If you are the initial packer** (you pack raw produce you grew or bought loose), 1.1330 gives you a longer list that reaches back to the harvest: farm location, field or growing-area name, harvester business name and phone, harvest date, cooling location and date if cooled, plus the packing-side fields and the TLC you assign. That is its own post; if this is you, tell us and we will write it.

## What this looks like as actual logs

Three sheets cover the whole rule for a typical producer, and you likely keep versions of them already:

1. **A receiving log** whose columns are the eight receiving KDEs. Your current version probably has five of them and is missing the TLC, the TLC source, and the reference document number.
2. **A batch sheet** that lists input TLCs with quantities consumed on one side, and the new TLC with its details on the other. If your batch sheet does not name input lot codes, that is the single highest-value column you can add this week.
3. **A shipping log** keyed by TLC and customer, with the BOL or invoice number attached, whose first seven columns you can hand to the customer.

Keep every record **two years**, and be able to produce the relevant slice as an **electronic sortable spreadsheet within 24 hours** of an FDA request during an outbreak or recall investigation (21 CFR 1.1455). A binder of paper meets the retention requirement and then fails the spreadsheet one; the fix is keeping the logs in anything sortable, which is a spreadsheet at minimum and [purpose-built software](/) when re-keying between sheets starts eating your week.

## The enforcement clock, honestly stated

FDA will not enforce the rule before **July 20, 2028**, per the Congressional directive it has said it intends to follow. If that date were the only pressure, you could file this post away for a year. It is not. The KDE lists above are already embedded in [retailer questionnaires](/blog/retailer-fsma-204-questionnaire), supplier portals, and audits with deadlines that have in some cases [already passed](/blog/wegmans-supplier-traceability-requirements). The rule wrote the field list; your buyers set the due date.

If you want to know how complete your own KDE capture is right now, the 3-minute [compliance score quiz](/score) checks exactly the columns in this post and tells you which events in your chain are leaking. And if your lot codes are the weak link, the free [TLC Validator](/tools/tlc-check) will grade one in ten seconds.

---

**Further reading**

- FDA: [Food Traceability Final Rule overview](https://www.fda.gov/food/food-safety-modernization-act-fsma/fsma-final-rule-requirements-additional-traceability-records-certain-foods)
- FDA: [Food Traceability List](https://www.fda.gov/food/food-safety-modernization-act-fsma/food-traceability-list)
- Cornell LII: [21 CFR Subpart S, the traceability rule text](https://www.law.cornell.edu/cfr/text/21/part-1/subpart-S)

**Related on this site**

- [TLC vs. KDE vs. CTE: the three FSMA 204 concepts producers keep mixing up](/blog/tlc-vs-kde-vs-cte)
- [How to assign a Traceability Lot Code (worked examples)](/blog/how-to-assign-a-traceability-lot-code)
- [The 24-hour traceback drill: an hour-by-hour mock recall](/blog/mock-24-hour-traceback)
- [What your retailer's FSMA 204 questionnaire is asking for](/blog/retailer-fsma-204-questionnaire)

*Written by [Anas Marwan](/authors/anas-n), Co-founder of Darza Technologies. Last reviewed 2026-07-21.*

---

Source: https://fsma204hub.com/blog/fsma-204-kde-checklist (https://fsma204hub.com)
