How to Read a Cannabis Flower COA: A Field Guide for Licensed Buyers

A certificate of analysis (COA) is the main document a licensed buyer has for judging a batch of flower before it goes on a shelf or into a product. Most COAs follow a similar layout, but the details that matter most often sit in the small print, such as an ID, a date, a unit or a limit.

This guide goes through a COA section by section. It builds on our earlier article, Pesticide-Free vs Organic: What a Third-Party COA Actually Tells a Licensed Buyer, which explains what a COA is and what kind of claim it supports. Here we look at how to read one.

This is general technical information. It is not legal advice, and it does not describe any product offer. The numbers in the examples are made up for illustration and do not come from any real report.

1. The header: who tested it

Start at the top of the first page. It should identify:

  • The laboratory, with its name, address and contact details.
  • A unique report number. You need this if you ever want to check the report with the lab directly.
  • The client. This is whoever ordered the test. It is usually the grower, so it tells you who paid for the work, not who took the sample.
  • Accreditation, if the lab holds it. Many testing labs are accredited against ISO/IEC 17025. ILAC, the international body for laboratory accreditation, describes accreditation as “the independent evaluation of conformity assessment bodies against recognised standards” to ensure “their impartiality and competence”. Accreditation bodies that sign the ILAC mutual recognition arrangement accept each other’s accreditations, which ILAC sums up as “accredited once, accepted everywhere”.

An accreditation covers a scope: particular tests on particular sample types. A lab can be accredited for one method and not for another. If a result matters to your decision, ask whether that test, on that sample type, is in the lab’s accredited scope.

Also check the page count (“page 2 of 4”) and any version number. A lab that corrects a report usually issues a new version and marks it as amended. Make sure you have every page of the latest version.

2. Sample ID and batch ID

A COA normally carries two identifiers:

  • The sample ID, assigned by the lab to the material it received.
  • The batch or lot ID, assigned by the grower to the production batch the sample came from.

The sample ID shows which material the lab tested. The batch ID connects that sample to the flower you receive. A COA without a batch ID, or with one that doesn’t match your delivery paperwork, doesn’t tell you anything verifiable about your delivery.

Look for how the sample was taken. Some reports say whether the lab’s staff collected it or whether the client sent it in. A sample collected by the lab is better evidence that it came from the batch named on the report. A submitted sample depends on the sender choosing it fairly.

3. Four dates, in the right order

A full COA can show up to four dates:

  1. Sampled: when the sample was taken from the batch.
  2. Received: when the lab logged it in.
  3. Analysed: when the tests ran. Different panels may have different dates.
  4. Reported: when the lab issued the report.

The dates should run in that order. A report dated before the sample was received, or a sample date after the delivery date, is worth a question. Compare the dates with your delivery as well. A recent sample date tells you more about current condition, while an older test describes the batch as it was then.

4. The panel and its units

Each section of a COA is one panel: cannabinoids, and screens for contaminants such as pesticide residues, microbes, heavy metals and, on some reports, moisture or water activity, mycotoxins or residual solvents. Our earlier article covers why a panel only tells you about what it tested. Read the units next, because each panel uses different ones:

UnitMeansTypical use
% (w/w)grams per 100 gcannabinoids, moisture
mg/gmilligrams per gram; 1% = 10 mg/gcannabinoids
mg/kg or ppmmilligrams per kilogramheavy metals, some residues
µg/kg or ppbmicrograms per kilogram; 1 mg/kg = 1,000 µg/kgpesticide residues, mycotoxins
CFU/gcolony-forming units per grammicrobial counts

A result that reads 0.05 in one unit and 50 in another can be the same amount. Before you compare two COAs, convert both to one unit.

If the report states a basis, note it as well. Some labs report cannabinoids “as received” and others on a dry-weight basis. The same flower gives a higher figure on a dry-weight basis, because the water has been taken out of the calculation.

5. Cannabinoids: acid forms, neutral forms and “total”

Most of the THC and CBD in flower that has not been heated is present in acid form, as THCA and CBDA. Heat converts the acids into the neutral forms THC and CBD by removing a carboxyl group. This is called decarboxylation. A peer-reviewed study of the reaction describes the acids as “thermally unstable” and says they “can be decarboxylated when exposed to light or heat” (Wang et al., 2016, Cannabis and Cannabinoid Research).

This affects how results are measured and reported:

  • Liquid chromatography (HPLC or LC-MS) doesn’t put the sample through the high-temperature injector that GC uses, so it can measure the acid and neutral forms separately. A COA from LC usually lists THCA and THC on separate lines.
  • Gas chromatography (GC) heats the sample in the injector. A 2025 study notes that GC-MS without derivatization “determines only neutral cannabinoids due to high temperature-decarboxylation occurring in the injection system”, and that the acids can be undercounted when that conversion is incomplete (Franzin et al., 2025, Pharmaceutics). A GC result without derivatization doesn’t separate the two forms.

Many reports also give a total value, calculated rather than measured:

Total THC = THC + (0.877 × THCA)

The factor 0.877 is the ratio of the two molecules’ weights. THC weighs 314.5 g/mol and THCA weighs 358.5 g/mol (PubChem molecular weight data), so converting THCA to THC leaves about 87.7% of the original mass. CBD and CBDA have the same molecular weights as THC and THCA, so total CBD uses the same factor.

A made-up example: a report shows THCA 10.0% and THC 1.0%. Total THC is 1.0 + (0.877 × 10.0) = 9.77%, which rounds to 9.8%. Adding the two lines to get 11.0% overstates it.

When you compare two COAs, check three things: which method each lab used, whether the figure is measured or a calculated total, and the basis (as received or dry weight). Two reports that differ on any of these aren’t directly comparable.

6. Detection limits, quantitation limits and “not detected”

Every analytical method has a floor. Method-validation guidance uses three related terms:

  • Limit of detection (LOD): the lowest concentration the method can reliably tell apart from zero.
  • Limit of quantification (LOQ): the lowest level at which the method’s performance is acceptable for the job, meaning the measured number can be relied on. The Eurachem guide to method validation (3rd edition, 2025) sets out how labs establish both.
  • Reporting limit (RL): the lowest level the lab will print as a number. The European Commission’s pesticide-residue method guidance (SANTE/11312/2021) defines it as “the lowest level at which residues will be reported as absolute numbers” and says it “is equal to or higher than the LOQ”.

You will see these on a COA as:

PrintedMeans
ND, “not detected”Not found at or above the detection or reporting limit the lab used
< LOQPossibly present, but below the level the method can measure reliably
”< 0.01” or another number after ”<”Below that printed limit; check whether it is the LOQ or a reporting limit, which can be higher
A numberMeasured at or above the reporting limit

“ND” always comes with a threshold, so look for that threshold in the report, either beside each analyte or in a methods note. A pesticide panel that reports “ND” against a limit of 0.01 mg/kg says more than one that reports “ND” against 0.5 mg/kg. If the report doesn’t print its limits, ask the lab for them.

This is what sits behind our own use of “pesticide-free”. It means the residue panel on the batch COA shows no detections, at the limits printed on that report. It is not a claim of zero.

7. Pass, fail and the limit set

Some COAs print Pass or Fail next to each result, or an overall status. A Pass only means the result met the limit set the lab applied, and different reports apply different limit sets. Check the report for the name of the set, or the limit printed beside each analyte. A Pass against one set says nothing about whether the result would pass another.

A Pass doesn’t replace reading the numbers either. Two batches can both pass while one sits close to the limit and the other is well below it.

8. Matching a COA to a delivery

When flower arrives, put the delivery paperwork next to the COA and check:

  1. Batch ID. Is it the same on the COA, the delivery note and the package label?
  2. Dates. Was the sample taken from this batch before the delivery date, and does the date order make sense?
  3. Version. Is it the latest version of the report, with every page?
  4. Report number. Ask the lab whether it will confirm that the report number exists and matches the client and batch. Some labs will do this without disclosing results to a third party.
  5. Sample type. Does the COA describe the same material you received, such as dried flower rather than trim or an extract?

If the batch ID or sample type doesn’t match, the COA may be genuine but belong to different material, and you can’t rely on it for this delivery. If a date, version or report number raises a question, ask the supplier and the lab before you rely on it.

9. Why third-party independence matters

A COA is better evidence when the party that benefits from the result is not the party that produces it. Third-party status alone doesn’t guarantee that, so these are the safeguards to check:

  • Sampling. Who took the sample, and how? A sample taken by the lab under a written sampling procedure is harder to cherry-pick than one the grower chose and sent in.
  • Commercial distance. Is the lab separate from the grower, and paid for the test rather than for a passing outcome?
  • Outside assessment. Is the lab accredited? An accreditation body assesses an accredited lab against ISO/IEC 17025, including its impartiality.
  • A record you can check. Will the lab itself confirm the report number to you?

An in-house test can still be useful to a grower for process control. As evidence for a buyer, a report from an independent, accredited lab that took its own sample carries more weight.

Quick reference

  • Header: lab, report number, accreditation and its scope, every page, latest version.
  • IDs: a sample ID and a batch ID, with the batch ID matching your delivery.
  • Dates: sampled, received, analysed, reported, in that order and recent enough.
  • Units and basis: convert to one unit before comparing, and note as-received or dry-weight.
  • Cannabinoids: separate acid and neutral lines from LC; totals use 0.877; check the method.
  • Limits: “ND” is always relative to a printed threshold, so find it.
  • Pass/Fail: relative to a named limit set, and the numbers still matter.

Thai GACP certification in process. Not a certified source until DTAM issues the number.

Blockhouse Collective Co., Ltd. (DBD 0105568067090) is an indoor cannabis flower cultivator supplying licensed businesses only. Licensed operators can find partnership details on our Partners page. Company details are on our Legal page.