Know what you’re buying before you get to the counter.
Search products from every Florida MMTC in one place: potency, terpenes, today’s price and sale price, and
the lab report behind it. Free, and built for patients.
Every MMTC, one searchCompare across MMTCs instead of opening a dozen menus.
List and sale prices, over timeSee whether today’s sale is really a deal.
Lab results, linkedThe lab report sits beside each product whenever the MMTC publishes it.
Good value this week
The best price in every category
The lowest price per gram, or per milligram of THC, in each category, counting only products with a lab report on the menu.
CBD-forward products are hard to find. We flag every one.
A product counts as CBD-forward when its CBD is equal to or greater than its THC. One filter shows them across
flower, oils, edibles and topicals, at every MMTC.
of products that state both THC and CBD are CBD-forward at the latest check.
See the findings
Price & sale tracking
See what your medicine really costs.
Sales and bundle deals change week to week. Every time we check a menu we record the list price and the sale price,
so you can see a product’s price history before you buy.
Price over time on every product page
How often it goes on sale, and how low
Price per gram, or per milligram of THC, so sizes compare fairly
Patients deserve to know what they’re purchasing, how much their medicine costs, and what their options are.
In Florida, every MMTC grows, makes and sells its own products. No two menus carry the same items, prices shift with
every sale and bundle deal, and comparing your options means opening a dozen different websites.
FL Cannabis Index brings that information together in one place, in plain language. It isn’t here to call anyone
out: it’s here so patients can shop with the full picture.
Straight from the sourceListings come from each MMTC’s own public menu, linked back so you can check.
Patients firstBuilt for the people buying medicine: clear, plain-language, and free.
IndependentNot affiliated with, endorsed by, or paid by any MMTC, brand or laboratory.
Paste a product page
open the product, select all, copy, paste here
Just entered
What each operator calls things
The seven categories are the spine everything gets compared on, but no
menu uses those words. One operator's "Whole Flower" is another's
"Premium Flower", and the same RSO syringe sits under Edibles at one shop
and Concentrates at the next. Record each operator's own wording here and
that mapping becomes the specification the scraper gets built from.
Paste a whole list at once: one per line. Bullets, numbering and trailing
counts like Flower (124) are stripped automatically, and
anything already on the list is skipped.
Florida's licensed medical marijuana treatment centers (MMTCs). Each grows, makes and sells its own
products; choose one to shop its menu, at every location or at one.
Deals
Everything marked down at the latest check, the biggest saving first. Prices change; confirm with the
location before you go.
Price ranges, by size
Every product is a different one — each MMTC (Florida's licensed medical marijuana treatment centers) grows
and sells only its own — so the only honest comparison across MMTCs is the shape of the market for a size: how
many products and MMTCs sell it, and where prices actually fall. Median and quartiles (the
middle 50%, p25–p75) are labelled so an outlier does not read as typical.
Findings
Three things every MMTC's menu (Florida's licensed medical marijuana treatment centers) shows at once: how much of the shelf is marked down and how deeply, how much
of it is not THC-dominant, and how much choice a shelf really holds. Every figure below is computed from the
latest check of every location and recomputed each week; the base and the date are stated on each section.
Price ranges by size. Every shelf size at once: how many products sell it and where prices fall.
Transparency scorecard
What share of each MMTC's live listings carry a lab-report link, a named terpene
breakdown (not just a total), and a batch id, as read off the menu by our tools. It is ranked by
certificate coverage, the one gap a patient cannot work around themselves and the one column
read the same way on every menu platform. A dash in the other two means our puller for that
platform does not read the field yet, not that the MMTC leaves it out. "Ever discounted"
and "list price ever moved" are the same numbers as the Deals tab's "How each MMTC
discounts," alongside them here.
Why this exists
In Florida, every MMTC grows, makes and sells its own products. No two menus carry the same items, prices shift with
every sale and bundle deal, and the lab reports are often hard to find. Answering simple questions (what exactly is in this
product, is this a fair price, is there something better suited to me at the MMTC down the road?) means opening
dozens of separate menus.
FL Cannabis Index brings every Florida medical cannabis menu into one place, with the lab report behind each
product wherever one is published, so patients can spend less time searching and more time deciding what works for
them. It isn’t here to call anyone out. It’s here so patients can shop with the full picture.
An MMTC (Medical Marijuana Treatment Center) is what Florida calls a licensed medical cannabis company:
each one grows, makes and sells its own products at its own locations. This site is built independently and is not
affiliated with, endorsed by, or paid by any MMTC, brand or laboratory.
As patients, we deserve to know
What we are purchasing. Every product shows what its menu states (THC, CBD, terpenes, strain and
genetics) and a link to its lab report, also called a certificate of analysis (COA), whenever the MMTC
publishes one. The lab report is the measured result for that batch; it's the best way to know what's
really in your medicine.
How much our medicine costs. Every price is shown alongside its price per gram (or per milligram of
THC for edibles, oils and capsules), so you can compare an eighth of flower, a vape cartridge and a pack
of gummies fairly. When an item is on sale, you'll see the regular price too.
What our options are. Search across all 22 MMTCs at once: every category, every size, every
location. Find products near you, compare two or three side by side, and see which locations carried a
product at the last check.
How to use it
Start with what you're looking for. Search a strain, product or brand, or tap a category like
Flower, Vapes or Edibles. Choose your city to see what's near you.
Compare fairly. "Best value" sorts by price per gram (or per milligram of THC), so products of
different sizes line up.
Open the lab report. Look for the green Lab report ✓. Tapping it takes you to the certificate
itself, so you can check potency and the safety tests (pesticides, heavy metals, microbials and more) for
that batch. How to read a lab report walks through every page.
Check where to buy. Each product page lists the locations where it was on the menu, with each one's
price and a link to its own menu.
Keep an eye on a price. Tap Watch price and we'll email you if it changes. No account
needed, and you can unsubscribe with one click.
A few terms, in plain words
Lab report / COA
A certificate from an independent, state-licensed laboratory showing what a specific batch contains and
whether it passed Florida's required safety tests. How to read one.
Total THC
THC plus the THC that THCA becomes when heated, as the menu states it. The lab report has the measured
number.
Non-THC-dominant
A product with as much CBD as THC, or more. You can filter for these under More filters.
Terpenes
Aromatic compounds that shape a strain's smell and character. Some MMTCs list each one; others list only
a total.
Genetics
The strain's parents (for example, "GMO x Gelato 33"), as published by the MMTC or from our reference
list, labelled either way.
Batch
One production run. The same product name can come in different batches with slightly different results,
so each product page lists every batch we've seen, each with its own lab report.
Where the information comes from
Once a week, we read every MMTC's public online menu, the same pages you'd see, at every location. Nothing is
taken from behind a login, and nothing is guessed: if a price, potency or lab report link appears here, the
MMTC published it. The date of the latest check is shown at the top of every page.
Good to know
Prices and stock change. This is a weekly snapshot, not a live feed. Please confirm with the location
before you go.
No lab report link doesn't mean no testing. Every product sold in Florida is tested. Some MMTCs post
the certificate on a product's own page or on the laboratory's website instead of on the menu. When we
can't find a link, we say "not on the menu", and nothing more.
Potency is as the menu states it. The lab report is the measured value, and it's always worth a
look.
Not medical advice
This site shares information; it doesn't recommend any product. Everyone's needs are different. Please talk
with your qualified physician about what's right for you, and feel free to bring what you find here to
that conversation.
Something look wrong?
Accuracy matters to us. If a price, product or lab report link is wrong, use Report a wrong price on its
product page, and a person will check it before anything changes. MMTCs are welcome to send corrections the
same way.
For researchers, advocates and the curious: citing the figures
Suggested citation: FL Cannabis Index (2026). Florida Medical Cannabis Menu Index, data as of
the date shown above. flcannabisindex.com.
Lab reports
How to read a Certificate of Analysis (COA)
Every product on a Florida MMTC menu has a lab report behind it. This page shows you how to find that
report, read it page by page, and use it to choose your medicine with confidence.
If you have ever looked at a product label and wondered whether the number on it is something you can trust, you are
asking the right question. The answer lives in one document: the Certificate of Analysis, or COA. Once you know how to
read one, a wall of unfamiliar numbers becomes a clear picture of what is in the product, what was tested for, and how
it measured against Florida's limits.
Each section below starts in plain English. Where Florida's rules set a specific requirement, a
Florida requires box follows so you can see exactly what the state program demands. Read the plain-English parts
and skip the boxes, or read both.
The images on this page are excerpts of real certificates issued by Florida-certified laboratories (Kaycha
Labs, Method Testing Laboratories and ACT Laboratories), all issued after Florida's new testing rules took effect on May 28, 2026, reproduced in part and annotated
for education. Tap any image to open it full size; each caption links to the complete certificate as the MMTC published it. The certificates remain the
property of the laboratories that issued them; nothing here should be taken as a substitute for the full report.
What a COA is, and why Florida requires one
A Certificate of Analysis is a lab report tied to one specific batch of a product. It records what an independent
laboratory measured in that batch and whether the batch met Florida's limits.
A complete COA covers two big areas:
Potency: how much THC, CBD, and other cannabinoids are in the product, and often a terpene profile.
Safety: screens for contaminants (microbes, mycotoxins, residual solvents, heavy metals, and pesticides) plus
quality checks like moisture, water activity, and foreign material.
Think of it this way: a sealed bottle of aspirin is the same every time. Cannabis is an agricultural product that can
vary from harvest to harvest, so every batch gets checked before it can be sold. Testing confirms three things at once:
the label is accurate, the product is clean, and there is a paper trail linking the product in your hand to the exact
sample the lab tested.
Plain-English takeaway: if a product is legally on a Florida MMTC menu, it has already
passed every required test. The COA lets you see the details behind that pass, and choose between products that all
passed but differ in potency, terpene character, and freshness.
Florida requires
Testing is done by Certified Marijuana Testing Laboratories (CMTLs), independent labs certified by the
Florida Department of Health's Office of Medical Marijuana Use (OMMU). A CMTL must hold ISO/IEC 17025:2017
accreditation and pass regular proficiency tests, and an MMTC may not own or have a financial interest in a
testing lab.
Every Retail Batch is tested before it can be dispensed. Products made from the same harvest, such as
flower and the pre-rolls made from it, are separate Retail Batches and are tested separately.
Florida sorts products into four testing categories ("matrices"): Usable Whole Flower Marijuana,
Derivative Product intended for inhalation (vapes, concentrates), Derivative Product not intended for
inhalation (tinctures, capsules, topicals), and Edibles. Kief, bubble hash, and rosin (trichomes
separated without solvent) are tested to the flower standard. A product that can be used more than one way is held
to the stricter limit.
A batch that fails any limit cannot be dispensed. The lab must confirm every contaminant failure by re-testing a
stored portion of the same sample, report the failure to the OMMU within 24 hours, and the COA must clearly show
which analyte failed and at what level.
COAs must be delivered as locked PDFs that cannot be edited, and COA results expire no more than one year from
the sample date.
The rules behind this page are Florida Administrative Code Chapter 64-4, mainly Rule 64-4.308 (CMTL
Sample Testing) and Rule 64-4.311 (CMTL Certificate of Analysis), both effective May 28, 2026. They replaced the
emergency rules (64ER20-series) that governed testing from 2020 through mid-2026, so older COAs may follow slightly
different formats and limits.
How to get the COA for your product
Getting a COA is usually easy. Any one of these paths works:
Look for it on the product page. Most Florida MMTCs link the COA directly from the product listing on their
website. Look for "Lab Results," "COA," or "Certificate of Analysis" on the product page. On this site, the green
Lab report ✓ on a product opens the same document.
Scan the QR code on the package. Many labels carry a QR code that opens the lab report. Scan it with your
phone's camera before you buy or as soon as you get home.
Use the batch number. Every label carries a batch (Retail Batch) number, usually near the barcode. Florida
labs run online lookup portals where you enter that number to pull up the matching report. If you forgot to grab
the report in-store, the batch number lets you find it later.
Ask at the counter. Asking an MMTC team member for the COA on a specific product is normal and encouraged.
They will either hand you the report or point you to where it lives.
The one rule that matters most: confirm the batch number on the COA matches the batch
number on your product. A report only means something if it describes the exact batch you are holding. If the numbers
do not match, or the report cannot be found, ask before you buy.
Florida requires
The MMTC must be able to provide the COA for any Retail Batch it dispenses. The lab delivers the COA to the MMTC
within 24 hours of verifying results, and passing results are uploaded to the state's seed-to-sale tracking system.
Any COA that was retested or amended must carry a bold 14-point statement saying so, plus a narrative of what
changed, so you can tell a revised report from an original.
Page 1: the header and the results summary
The first page of a Florida COA, annotated: product and batch, the seed-to-sale block, the pass/fail grid, the potency headline numbers, a below-LOD result in the new format, the footnotes and the lab's credentials. Excerpt from a Kaycha Labs certificate for Curaleaf's Baba Yaga flower, September 2026. See the complete certificate.
Product name, strain, and matrix (the testing category: here, Usable Whole Flower Marijuana). Check the name matches the product you are considering.
Seed-to-sale block: harvest batch and Retail Batch numbers, batch and harvest dates, total units, and the cultivation and processing facilities. The Retail Batch number must match your package.
Lab ID, sampling date, completion date, and the expiration date of the results (one year after sampling at most).
The overall verdict, in large type: compliance for retail, PASSED. A batch that shows FAIL here cannot be dispensed.
The results summary grid: one box per test category with PASSED, or NOT TESTED where the test does not apply to this product type (solvents on flower, here).
The headline potency numbers: Total THC, Total CBD, and total cannabinoids, as a percentage and in milligrams per container.
CBD reads "<0.00100": below the lab's LOD, written as "<" plus the LOD number (shown two rows down). That is the format Florida's 2026 rule requires; older COAs wrote "ND".
Footnotes: the method, instrument and batch. Below them the lab defines its terms, including the "J" qualifier it adds to any result between the LOD and the LOQ.
The lab's credentials: Florida CMTL license number and ISO/IEC 17025:2017 accreditation, with the reviewer's signature and date.
The first page is a summary of everything else in the report. Glance here first to confirm you are looking at the
right document, then read the pass/fail grid.
The header. Check these five things:
Product name: should match the product you are considering.
Batch / lot number: must match the label on the package.
Test date and expiration date: newer is generally better (see Red flags).
Laboratory name and accreditation: look for a Florida CMTL and an ISO/IEC 17025 reference.
Sample type ("matrix"): flower, inhalable derivative, non-inhalable derivative, or edible. The tests
required, and the limits applied, differ by type.
The seed-to-sale block. Florida tracks every product from plant to patient, and the COA carries that trail:
which MMTC grew and processed it, the cultivation date, the production or harvest date, the number of units in the
batch, and the batch weight. This is how the state, and you, can link the package in your hand to the exact sample that
was tested.
The results summary grid. This grid lists each test category (potency, microbials, mycotoxins, heavy metals,
pesticides, residual solvents, water activity, moisture, filth and foreign material) with a PASS or FAIL
next to each. A passing product shows PASS on every test that applies to its type. Some tests simply do not apply:
moisture, for example, is only required for flower and solventless concentrates, so an edible COA may show it as not
tested. That is normal, not a gap.
The potency and terpene summaries. Below the grid you will usually find the headline numbers: Total THC, Total
CBD, CBG, CBN, and total cannabinoids, followed by the top terpenes and total terpene percentage. The detailed tables
come later in the report.
The footnotes. The bottom of the page usually lists the equations and abbreviations used in the report, such as
the Total THC formula, the definitions of LOD and LOQ, and which units apply. Do not skip these. They tell you exactly
how the lab calculated the numbers above.
Florida requires
A COA must show the MMTC that submitted the sample, the cultivation and processing facilities, the cultivar (or
"mixed cultivar"), the Retail Batch and harvest batch numbers with their creation dates, the number of units and
total weight or volume in the batch, the testing matrix, the sample preparation date and time, the instrument used,
the SOPs followed, an expiration date no more than one year from the sample date, and a PASS or FAIL
statement in bold 14-point type or larger. Any failed COA must include a photo of the product label and packaging.
(Rule 64-4.311)
Potency: the cannabinoid panel
The cannabinoid panel from a flower COA, annotated: the THCA and delta-9 THC rows, a below-LOD result, a between-LOD-and-LOQ result marked "J", Total THC, total cannabinoids and the label-claim check. Excerpt from a Method Testing Laboratories certificate for Sunburn's Maple Dunks flower, September 2026. See the complete certificate.
THCA: the raw acid form. On unheated flower this is the big number (26.0% here).
Delta-9 THC: the already-active THC, usually small on flower (0.726% here). Reading this line as "the potency" is the classic mistake.
Each result is shown with the lab's LOD and LOQ beside it, then three ways: mg/g, percent by weight, and mg per unit (the whole 3.5 g package). 260 mg/g = 26.0%.
Between the LOD and the LOQ: CBDA was detected above the LOD (0.316) but below the LOQ (1.71), so the lab reports its best estimate, 1.06, and marks it "J" for estimated. This is the format Florida's 2026 rule requires; older COAs wrote "<LOQ" and gave no number.
Below the LOD: nothing detected. Method writes "<LOD" with the LOD itself (0.0900 mg/g) in its own column; Kaycha and ACT print the number directly, e.g. "<0.0900".
Total THC = delta-9 THC + (THCA × 0.877): 0.726 + (26.0 × 0.877) ≈ 23.5%, printed as 23.6% because the lab works from unrounded values. 825 mg in the package.
Total cannabinoids: everything the lab detected, added up. Higher than Total THC, and not a THC number.
Label claim check: when the package states a potency, the lab prints the deviation here against Florida's tolerance. N/A means this package made no claim.
This is the section most patients read first. It lists each cannabinoid the lab measured and how much of it is
present. Results are shown two ways, and they are interchangeable:
Percent by weight (%): for example, 25% THC.
Milligrams per gram (mg/g): the same value written differently. Multiply the percentage by 10 to get mg/g
(25% = 250 mg/g); divide by 10 to go back.
THC, THCA, and the Total THC formula. This is the single most misunderstood part of any COA. Flower usually
shows a low delta-9 THC number and a high THCA number, and patients sometimes read that low delta-9 figure
as "weak." It usually isn't.
THCA is the raw, non-intoxicating acid form of THC found in unheated flower. When you apply heat (smoking, vaping,
cooking) THCA converts to active delta-9 THC through a reaction called decarboxylation. During that reaction the
molecule sheds a carbon-dioxide group and loses a bit of mass, which is why labs use a conversion factor of 0.877 (THC
weighs about 87.7% of what THCA weighs).
Total THC = Delta-9 THC + (THCA × 0.877)
The same logic gives Total CBD = CBD + (CBDA × 0.877).
Worked example. A flower batch listed at 28.0% THCA and 0.50% delta-9 THC works out to
0.50 + (28.0 × 0.877) = about 25.1% Total THC. Total THC is the number to use when comparing two products
head-to-head. Treat it as a ceiling, the maximum after full conversion, because real-world heating is never 100%
efficient.
Cannabinoid
% by weight
mg/g
Note
THCA
28.0%
280
Raw acid form; converts with heat
Delta-9 THC
0.50%
5.0
Already-active THC
Total THC (calculated)
≈ 25.1%
≈ 251
The key comparison number
CBD / CBDA
< 0.10%
< 1.0
Below the lab's reporting limit
Total cannabinoids
26.4%
264
Sum of everything detected
CBD, minor cannabinoids, and "Total Cannabinoids." CBD and CBDA follow the same acid-to-active relationship as
THC. You may also see minor cannabinoids such as CBG, CBN, CBC, THCV, and CBDV in smaller amounts. Total
Cannabinoids sums everything the lab detected. It is not the same as Total THC, and a higher Total Cannabinoids
figure does not mean a stronger THC effect. For potency comparisons keep your eye on the Total THC line; for a
CBD-forward or balanced product, compare the Total CBD line and the CBD:THC ratio. Research into how the various
cannabinoids interact is ongoing, so use these figures to compare products and consistency, and bring questions about
effects to your physician.
Dry weight vs. as-received. Flower naturally holds some moisture. Under Florida's current rule, flower potency
is reported as received, at the moisture content the lab measured, not corrected to a dry-weight basis. That
means two batches at different moisture levels are not perfectly apples-to-apples, but it is the number that reflects
the product as sold. Contaminant results for flower, by contrast, are corrected to dry weight.
Florida requires
Every COA must report Total Active THC and Total Active CBD in milligrams per package, plus the
full Cannabinoid Profile in both mg/g and percent, to three significant figures.
Florida's definition of Total Active THC is delta-9 THC + delta-8 THC + (THCA × 0.877). Labs have until May
2027 to add the delta-8 term, so most COAs you see today use the simpler delta-9 + (THCA × 0.877) formula shown
above. Total Active CBD = CBD + (CBDA × 0.877).
The lab must test for eleven cannabinoids: delta-9 THC, delta-8 THC, THCA, THCV, CBD, CBDA, CBDV, CBG, CBGA,
CBN, and CBC.
Flower potency is reported as received (at the lab-tested moisture content) using the labeled weight of
the package; edibles use the measured weight. Any flower result above 32% Total Active THC must be confirmed
by re-preparing and re-analyzing the sample and reported to the OMMU.
Label accuracy is tested too. If the label claims more than 25 mg of a cannabinoid per package, the
tested amount may differ by no more than 10%; at 25 mg or less, by no more than 50%; a label claim of 10 mg or
less must test at 10 mg or less. For edibles the tolerance is 15%. A claimed ratio (for example 1:1) must be
within 10%. A label outside these tolerances is a labeled potency failure and the product cannot be sold
until the label is corrected and a new COA issued.
The terpene profile
The terpene panel from the same COA, annotated: the units, the top terpenes, a "J"-qualified trace and the below-LOD entries. Excerpt from a Method Testing Laboratories certificate for Sunburn's Maple Dunks flower, September 2026. See the complete certificate.
Terpenes are marked TESTED, not PASS/FAIL: Florida sets no terpene limits, so there is no action-limit column on this page.
Results in µg/g (the same as ppm) and in percent. 12,700 µg/g = 1.27%. The LOD and LOQ columns work the same way as on the safety panels.
The top terpenes: beta-caryophyllene (1.27%, peppery), limonene (0.899%, citrus) and alpha-pinene (0.377%, pine). That trio is this batch's aroma fingerprint; 4.03% total terpenes is printed on page 1.
Between the LOD and the LOQ: terpinolene at an estimated 32.5 µg/g, marked "J". A trace, reported with a number rather than a blank.
Below the LOD: "<LOD" on both result columns. Most of a 40-terpene panel reads this way; a handful of terpenes define the character.
Terpenes are the aromatic compounds that give each cultivar its distinctive smell and flavor. Most Florida MMTCs
publish a terpene panel on the COA, and many list the top terpenes on the menu. Terpenes are usually shown in percent
by weight or in mg/g, and sometimes in parts per million (ppm); higher numbers generally mean a more pronounced aroma.
A total terpene percentage usually appears just under the table.
Common terpenes you will see include myrcene (earthy, herbal), limonene (citrus),
beta-caryophyllene (peppery, spicy), pinene (pine), linalool (floral), humulene (woody,
hoppy), ocimene (sweet, herbal), and terpinolene (bright, complex).
Patients often use the terpene profile and the top three terpenes as a guide to a product's character and to find
consistency across repurchases. The idea that terpenes and cannabinoids work together, sometimes called the "entourage
effect," is an active area of research rather than settled fact, so this page describes terpenes by their aroma, not by
any health effect.
A consistency tip: if a cultivar you like always smells citrus-forward but a new batch's
COA shows a very different top terpene, the experience may differ too. The terpene panel is a useful fingerprint for
finding the same character batch to batch, and it is a better guide than the strain name alone, since the same name
can vary from grow to grow.
Florida's position
Terpene analysis is not a required compliance test in Florida. The rule only mentions terpenes to say that,
when a lab does run them on flower, the results are reported as received rather than corrected to dry weight.
Because the panel is voluntary, the set of terpenes measured, the units, and whether a total is shown can vary from
lab to lab and MMTC to MMTC. A COA with no terpene section is complete; a COA with no safety section is not.
How to read a contaminant results table
One contaminant table, annotated: the analyte, instrument, LOD, LOQ, limit, result and status columns, with a measured result, a between-LOD-and-LOQ result and a below-LOD result on the same page. Excerpt from an ACT Laboratories certificate for MÜV's Juicy Mango vape, August 2026. See the complete certificate.
The columns every contaminant table shares: the analyte, the lab's LOD and LOQ, Florida's limit, the result (here in ppm), and PASS or FAIL for that row.
The instrument: headspace GC-MS, the standard method for residual solvents. Other panels name LC-MS/MS (pesticides), ICP-MS (metals) or PCR (microbes).
A measured number: 142 ppm of ethanol against a 5,000 ppm limit, a small fraction of what is allowed. A pass.
Between the LOD (2.0) and the LOQ (20.0): acetone was detected at an estimated 3.59 ppm, and the lab marks it with an asterisk, its qualifier. Florida's 2026 rule requires exactly this: the estimated number plus a qualifier, not "<LOQ". Still far below the 750 ppm limit.
Below the LOD: written as "<10.0", the LOD itself. Nothing was detected above the instrument's floor. This "<" plus the LOD number is the format the 2026 rule requires; this lab's COAs from June still wrote "ND".
The status column. Every row must read Passed for the panel, and the whole COA, to pass.
Report notes: the lab spells out what its qualifier means. Every lab uses its own symbol ("J", "*"), so read these.
The panel verdict.
The safety pages are the part of the COA Florida regulates most tightly, and every one of them uses the same table
layout. Once you can read one, you can read them all. Each row is one analyte (one specific contaminant), and the
columns tell you:
Column
What it means
What to look for
Analyte
The specific compound or organism tested
Florida's required list for that category
Method / instrument
How it was measured (e.g., LC-MS/MS, GC-MS, ICP-MS, PCR, plating)
Gives insight into the strengths and limits of the result
LOD (limit of detection)
The lowest amount the instrument can detect at all
Set by the lab, must be well below the limit
LOQ (limit of quantification)
The lowest amount the instrument can measure reliably
Always at or above the LOD
Action limit
The most Florida allows before the product fails
Printed on the COA for every analyte
Result
The measured amount, with its unit
"<" plus the LOD, a qualified estimate (e.g. "1.06 J"), or a number below the limit
Status
PASS or FAIL for that analyte
PASS on every row
Reading the result column. Since Florida's new rules took effect on May 28, 2026, every result on a COA is
written one of four ways, to three significant figures:
Below the LOD: written as "<" plus the LOD number, e.g. <0.0200. Nothing was detected above
the instrument's floor. This is the cleanest possible result. (One lab, Method, writes "<LOD" and prints the
LOD number in the column beside it.)
Between the LOD and the LOQ: the lab's best estimate, marked with a qualifier, e.g. 1.06 J
or 3.59 *. The instrument saw something, but the amount is too small to measure precisely. Each lab picks its
own symbol and defines it in the notes. Still a pass, and usually far below the limit.
A number: the analyte was measured. Compare it to the action limit; below the limit is a pass.
> [value]: the result was above the top of the instrument's calibration range. Rare on a passing COA.
Older COAs, and some labs that have not yet caught up, still write ND ("not detected") or
<LOQ. Those are the old style: "ND" hides how low the lab could actually see, and "<LOQ" lumps a real
trace together with nothing at all.
Worked example. In a residual-solvent table, suppose isopropanol reads <50.0 with an LOD of 50 µg/g,
and methanol reads 31.2 J with an LOD of 25 µg/g and an LOQ of 50 µg/g. The isopropanol line tells you the
lab found nothing above 50 µg/g. The methanol line tells you the lab detected a trace, about 31 µg/g, between the
LOD and the LOQ, so the number is an estimate and carries the "J" qualifier. Both are passes: the Florida limit for isopropanol in an inhalable
product is 500 µg/g and for methanol 250 µg/g, so even the highest possible reading is a small fraction of what is
allowed.
Units to know. Contaminants are reported in ppm (parts per million) or ppb (parts per billion).
1 ppm = 1,000 ppb. Labs often write ppm as µg/g (micrograms per gram) and ppb as ng/g (nanograms per gram); they are
the same thing. Microbial counts are in CFU/g (colony-forming units per gram), and the most serious organisms
are simply reported present / not present.
Florida requires
Every result above the LOD must be a numeric value to three significant figures; a value below the LOD is written
as "< [LOD value]"; a value between the LOD and LOQ must be marked with a qualifier; and the COA must print the
action limit for each analyte so you never have to look it up. Flower contaminant results are corrected to dry
weight; derivative products and edibles are not. Any contaminant failure must be confirmed by re-analysis of a
stored portion of the same sample, and if confirmed, the highest value is what goes on the COA. A result
within 10% of the limit must also be re-analyzed.
Microbials and mycotoxins
The microbial and mycotoxin tables of a COA, annotated: the four Aspergillus species, Listeria, total yeast and mold, the PCR and culture methods, and the five mycotoxins. Excerpt from a Kaycha Labs certificate for Curaleaf's Baba Yaga flower, September 2026. See the complete certificate.
Microbial tables use the same columns as the rest: the limit, the lab's LOD/LOQ, the result, and PASS/FAIL. For pathogens the rule asks only for present or absent, so the limit is written in words.
The four Aspergillus species Florida names (flavus, fumigatus, niger, terreus), each reported as present or NOT PRESENT in 1 g.
Listeria monocytogenes: new in the 2026 rule for flower and edibles. A COA from before mid-2026 will not have this line.
Total yeast and mold is the one organism count, reported as a number to three significant figures: 78.1 CFU/g here against a limit of 100,000 CFU/g.
The limit column: "NOT PRESENT IN 1g" for pathogens; 100,000 CFU/g for total yeast and mold.
The method: PCR (DNA detection) for the pathogens. Florida requires a culture (plating) method for yeast and mold on flower, which the second block below describes.
Mycotoxins: aflatoxins B1, B2, G1, G2 and ochratoxin A, each with a 0.02 ppm (20 ppb) limit. Every result reads "<0.00200": below the LOD, written as "<" plus the LOD, as the 2026 rule requires.
In plain English. Microbial screening looks for harmful organisms: bacteria such as Salmonella and
toxin-producing E. coli, and problem molds such as Aspergillus. It also counts total yeast and mold.
Mycotoxins are poisons, such as aflatoxins, that certain molds leave behind even after the mold itself is gone. This
category matters for everyone and is especially relevant for patients with weakened immune systems, since inhaling or
ingesting these organisms can cause serious infection.
On the COA, the dangerous organisms are reported as present / not present (you want "not present" or "ND" on
every line). Total yeast and mold is reported as a count in CFU/g, compared with the limit.
Florida requires (all product types unless noted)
Analyte
Limit
Applies to
Shiga toxin-producing E. coli (STEC)
None present in 1 g
All
Salmonella spp.
None present in 1 g
All
Aspergillus niger, A. fumigatus, A. flavus, A. terreus
None present in 1 g
All
Listeria monocytogenes
None present in 1 g
Flower and edibles
Total combined yeast and mold
Less than 100,000 CFU/g
All
Total aerobic microbial count
Less than 100 CFU/g
Non-oral transmucosal products only (nasal sprays, inhalers, suppositories)
Staphylococcus aureus
None present
Non-oral transmucosal only
Bile-tolerant Gram-negative bacteria
None present
Non-oral transmucosal only
Total yeast and mold (transmucosal)
Less than 10 CFU/g
Non-oral transmucosal only
Mycotoxin
Limit
Applies to
Aflatoxin B1
Less than 20 ppb
All
Aflatoxin B2
Less than 20 ppb
All
Aflatoxin G1
Less than 20 ppb
All
Aflatoxin G2
Less than 20 ppb
All
Sum of all aflatoxins
Less than 20 ppb
All
Ochratoxin A
Less than 20 ppb
All
A few details worth knowing: Listeria was added in the 2026 permanent rule, so COAs issued before mid-2026
will not show it. Yeast and mold on flower must be measured by a culture (plating) method, not just PCR. If a
product was sterilized by irradiation, the lab must incubate the yeast and mold plates longer, since irradiation can
slow surviving growth. And a lab must report any organism not on this list if it could be harmful, so an unfamiliar
name on a microbial page is not automatically a problem; check its status column.
Residual solvents
The residual solvent panel of a vape COA, annotated: Florida's inhaled action levels and a clean result column on a solvent-extracted live resin. Excerpt from a Method Testing Laboratories certificate for Ayr's Banana Punch live resin cartridge, September 2026. See the complete certificate.
Columns: the lab's LOD and LOQ, Florida's action level (limit), the result and the status. Units are mg/kg, which is the same as ppm.
The action levels are Florida's inhaled-product limits: 5,000 ppm for butane and propane, 1 ppm for benzene, 2 ppm for chloroform. Edibles and tinctures get the looser second column of limits in the rule.
Every result is "<LOD": nothing detected. Live resin is extracted with hydrocarbon solvents, so a clean column here means the solvent was fully purged.
Butane: the lab can detect it down to 12.5 ppm, 400 times lower than the 5,000 ppm limit. LODs come from the instrument, not the rule.
Ethanol: 5,000 ppm limit for inhaled products. Oral products and topicals are exempt, but the lab must still report the number.
The panel verdict.
In plain English. Many concentrates, vape oils, and the distillate inside edibles and tinctures are made by
washing cannabinoids out of the plant with a solvent (butane, propane, ethanol, CO₂) and then purging the solvent off.
Residual-solvent testing confirms that whatever solvent is left behind is within Florida's limits. Solventless
products (flower, kief, bubble hash, rosin) are not required to have this test, and flower COAs often skip it.
The limits differ by how the product is used: inhaled products (vapes, dabs) have tighter limits for many
solvents than non-inhaled products (edibles, capsules, tinctures, topicals), because the lungs are a more
sensitive route than the gut.
Florida requires testing of derivative products for these 21 solvents
Solvent
Limit, inhaled (ppm)
Limit, not inhaled, incl. edibles (ppm)
Acetone
< 750
< 5,000
Acetonitrile
< 60
< 410
Benzene
< 1
< 1
Butane
< 5,000
< 5,000
Chloroform
< 2
< 2
1,2-Dichloroethane
< 2
< 2
1,1-Dichloroethene
< 8
< 8
Ethanol
< 5,000
< 5,000 (see note)
Ethyl acetate
< 400
< 5,000
Ethyl ether
< 500
< 5,000
Ethylene oxide
< 5
< 5
Heptane
< 5,000
< 5,000
Hexane
< 250
< 250
Isopropyl alcohol
< 500
< 5,000
Methanol
< 250
< 3,000
Methylene chloride
< 125
< 125
Pentane
< 750
< 5,000
Propane
< 5,000
< 5,000
Trichloroethylene
< 25
< 25
Toluene
< 150
< 890
Total xylenes (m-, p-, o-)
< 150
< 2,170
Ethanol note: oral products, topicals, and metered-dose inhalers are exempt from the ethanol limit, because
ethanol is a common and accepted ingredient in tinctures and similar products. The lab must still measure and
report the ethanol level on the COA, so you will see a number there even though it cannot fail.
What good looks like. On a well-made butane or propane extract you should see those two solvents at ND or a
small fraction of the 5,000 ppm limit. Benzene, chloroform, 1,2-dichloroethane, ethylene oxide, and trichloroethylene
are not used in cannabis extraction; they are on the list because they are toxic at tiny amounts and can turn up as
impurities in lower-grade solvents. ND on those lines is what you want.
Pesticides, herbicides, and fungicides
The pesticide (agricultural agents) table of a COA, annotated: the ppm units, the two instruments, the per-compound limits and a result column in the new "<LOD" format. Excerpt (first of two pages) from an ACT Laboratories certificate for MÜV's Georgia Pie x Gastro Pop flower, September 2026. See the complete certificate.
The familiar columns. Note the unit: this lab reports pesticides in ppm, so 0.100 ppm is the 100 ppb limit that applies to most compounds on Florida's list.
Two instruments: GC-MS/MS for the few compounds Florida assigns to gas chromatography (chlordane, chlorfenapyr, methyl parathion, PCNB) and LC-MS/MS for the rest.
The limit column is not uniform: carbaryl 0.5, clofentezine 0.2, chlorantraniliprole 1.0 ppm. Each compound has its own number in the rule.
The result column: "<" plus the LOD for every compound, i.e. nothing detected. The same lab's COAs from June wrote "ND" down this column; since the 2026 rule, you see the actual detection floor.
Abamectin: LOD column 0.008, result "<0.00820". Same number; the result is written to three significant figures, as the rule requires.
Chlorantraniliprole: a limit ten times the usual (1.000 ppm), still below the LOD here.
The panel verdict. This page holds the first 29 of 66 compounds; the rest continue on the next page.
In plain English. The cannabis plant absorbs and holds on to whatever is sprayed on it or applied to its soil,
and heat can concentrate or change those chemicals when the product is smoked or vaped. Florida calls these
agricultural agents and requires every product to be screened for 66 of them, each with its own limit. Any
detection above the limit is a failure, and the batch cannot be dispensed. This page is long, but reading it is simple:
you want ND or < LOD down the whole result column, and PASS down the whole status column.
As with solvents, most limits are tighter for inhaled products than for edibles and other non-inhaled products. Where
the two limits are the same, the compound is considered hazardous by any route.
Florida requires screening for these 66 agricultural agents
Limits are in ppb (parts per billion); "inhaled" covers flower and inhalable derivatives, "not inhaled"
covers edibles and other non-inhaled derivatives.
Show the full list of 66 agricultural agents and their limits
Agricultural agent
Inhaled (ppb)
Not inhaled (ppb)
Abamectin (B1a + B1b)
< 100
< 300
Acephate
< 100
< 3,000
Acequinocyl
< 100
< 2,000
Acetamiprid
< 100
< 3,000
Aldicarb
< 100
< 100
Azoxystrobin
< 100
< 3,000
Bifenazate
< 100
< 3,000
Bifenthrin
< 100
< 500
Boscalid
< 100
< 3,000
Carbaryl
< 500
< 500
Carbofuran
< 100
< 100
Chlorantraniliprole
< 1,000
< 3,000
Chlordane (cis + trans)
< 100
< 100
Chlorfenapyr
< 100
< 100
Chlormequat chloride
< 1,000
< 3,000
Chlorpyrifos
< 100
< 100
Clofentezine
< 200
< 500
Coumaphos
< 100
< 100
Cyfluthrin
< 500
< 1,000
Cypermethrin
< 500
< 1,000
Daminozide
< 100
< 100
Diazinon
< 100
< 200
Dichlorvos
< 100
< 100
Dimethoate
< 100
< 100
Dimethomorph (E + Z)
< 200
< 3,000
Ethoprophos
< 100
< 100
Etofenprox
< 100
< 100
Etoxazole
< 100
< 1,500
Fenhexamid
< 100
< 3,000
Fenoxycarb
< 100
< 100
Fenpyroximate
< 100
< 2,000
Fipronil
< 100
< 100
Flonicamid
< 100
< 2,000
Fludioxonil
< 100
< 3,000
Hexythiazox
< 100
< 2,000
Imazalil
< 100
< 100
Imidacloprid
< 400
< 3,000
Kresoxim-methyl
< 100
< 1,000
Malathion
< 200
< 2,000
Metalaxyl
< 100
< 3,000
Methiocarb
< 100
< 100
Methomyl
< 100
< 100
Methyl parathion
< 100
< 100
Mevinphos
< 100
< 100
Myclobutanil
< 100
< 3,000
Naled
< 250
< 500
Oxamyl
< 500
< 500
Paclobutrazol
< 100
< 100
Pentachloronitrobenzene (PCNB)
< 150
< 200
Permethrin (cis + trans)
< 100
< 1,000
Phosmet
< 100
< 200
Piperonyl butoxide
< 3,000
< 3,000
Prallethrin
< 100
< 400
Propiconazole
< 100
< 1,000
Propoxur
< 100
< 100
Pyrethrins (I, II, cinerins, jasmolins)
< 500
< 1,000
Pyridaben
< 200
< 3,000
Spinetoram (J + L)
< 200
< 3,000
Spinosad (A + D)
< 100
< 3,000
Spiromesifen
< 100
< 3,000
Spirotetramat
< 100
< 3,000
Spiroxamine
< 100
< 100
Tebuconazole
< 100
< 1,000
Thiacloprid
< 100
< 100
Thiamethoxam
< 500
< 1,000
Trifloxystrobin
< 100
< 3,000
Two more rules on top of the list. First, there is a total contaminant load cap: all agricultural
agents added together must be under 5 ppm for inhaled products and under 30 ppm for non-inhaled products, so a
batch cannot pass by having many compounds each just under its own limit. Second, if a lab finds a pesticide,
solvent, metal, or microbe that is not on Florida's list and could be toxic, the OMMU can fail the batch
anyway, and the lab must report the finding within 24 hours.
A note on what growers may use. Being on this list does not mean a compound is allowed in cultivation.
Florida MMTCs may only apply pesticides registered with the Florida Department of Agriculture or the U.S. EPA for
use on the crop (Rule 64-4.013). The testing list exists to catch what should not be there.
Why some names look familiar. Myclobutanil is the fungicide behind the Eagle 20 controversy in other states;
when heated it can release hydrogen cyanide, which is why its inhaled limit is 30 times tighter than its edible limit.
Piperonyl butoxide and pyrethrins are common in household bug sprays. Chlorpyrifos and carbofuran are organophosphate
and carbamate insecticides that are now heavily restricted in food crops.
Heavy metals
The heavy metals table of a COA, annotated: the original four metals, the new nickel and tin lines, the limits in ppm, and the ICP-MS method. Excerpt from a Kaycha Labs certificate for Curaleaf's Baba Yaga flower, September 2026. See the complete certificate.
Same columns as every other panel: limit, LOD, LOQ, result, unit, PASS/FAIL.
The four metals every COA has carried since 2020: arsenic, cadmium, lead and mercury. Each reads "<" plus its LOD, i.e. nothing detected.
Nickel and tin: added by the 2026 rule. Nickel matters most on vapes, where it can leach from cartridge heating elements.
The limits, in ppm on this lab's COA: 0.5 ppm lead = 500 ppb, 0.2 ppm arsenic = 200 ppb (the inhaled limits, since this is flower).
Watch the unit. Some labs report metals in ppb, some in ppm; 1 ppm = 1,000 ppb.
The method: ICP-MS, which detects metals at parts-per-billion levels.
In plain English. Metals get into a plant from soil, water, fertilizer, and processing equipment, and cannabis
is unusually good at pulling them up from the ground. In vape products, metals can also leach from the cartridge
hardware into the oil. Heavy-metal testing checks the finished product for a short list of toxic metals, each with its
own limit. Because inhaled metals go straight to the bloodstream, the limits for vapes and flower are much tighter
than for edibles and tinctures.
Florida requires testing every product type for six metals
Metal
Inhaled (ppb)
Not inhaled, incl. edibles (ppb)
Lead (Pb)
< 500
< 500
Arsenic (As)
< 200
< 1,500
Cadmium (Cd)
< 200
< 500
Mercury (Hg)
< 200
< 3,000
Nickel (Ni)
< 500
< 3,000
Tin (Sn)
< 4,000
< 4,000
Nickel and tin were added in the 2026 permanent rule (labs had 60 days from May 28, 2026 to begin reporting them),
so a COA issued before then will show only the "big four": lead, arsenic, cadmium, and mercury. Nickel in particular
is worth watching on vape COAs, since it is a common component of cartridge heating elements. The lab measures these
by ICP-MS, which can see metals at parts-per-billion levels, so a result of ND means very little indeed was found.
Remember the unit: metals are reported in ppb, and some labs write that as µg/kg or ng/g. A lead result of
"0.12 ppm" is 120 ppb, which is a pass.
Moisture, water activity, and foreign material
The water activity and moisture blocks of a flower COA, annotated: 0.56 aw against the 0.65 limit and 8.2% moisture against the 15% limit. Excerpt from a Method Testing Laboratories certificate for Sunburn's Maple Dunks flower, September 2026. See the complete certificate.
Water activity: 0.56 aw against a 0.65 limit for flower. Below about 0.60, mold cannot grow; this is the number that predicts shelf stability.
The water-activity action level: 0.65 aw for flower and solventless concentrates (kief, hash, rosin); 0.85 aw for other derivatives and edibles.
Moisture: 8.2% of the flower's weight is water, under Florida's 15.0% ceiling. There is no lower limit, but flower this dry can burn harsh and lose aroma; most growers aim for about 10 to 12%.
The moisture action level, 15%. A result of 15.0% or higher fails. Flower and solventless concentrates only.
Water activity is measured with a water activity probe, and moisture (right) with a moisture analyzer (loss on drying). The two numbers are not interchangeable.
In plain English. These are the quality checks. Moisture content is how much of the flower's weight is
water. Water activity (Aw) is different: it measures how much of that water is available for microbes to
use, on a scale from 0 to 1. Water activity is the better predictor of whether mold can grow, which is why it applies
to more product types than moisture does. Filth and foreign material is a visual inspection for things that
should not be there: hair, insects, bits of packaging, processing waste, or visible mold.
Beyond compliance, these numbers hint at the experience. Very dry flower (say, under 8% moisture) can burn hot and
lose aroma; flower near the top of the range carries more microbial risk and may feel spongy. Many growers aim for 10
to 12% moisture and 0.55 to 0.62 Aw.
Florida requires
Test
Limit
Applies to
Moisture content
Below 15.0% (a result of 15.0% or higher fails)
Flower, plus kief, bubble hash, and rosin
Water activity
0.65 Aw or less
Flower, plus kief, bubble hash, and rosin
Water activity
0.85 Aw or less
Derivative products and edibles, except products that list water as an ingredient
Filth and foreign material
No more than an average of 1% by weight, and covering no more than 10% of the sample area
All
Feces
None visible
All
Mold, mildew, or fungus
None visible
All
Moisture is reported to the nearest tenth of a percent and water activity to two significant figures. For flower,
the lab must inspect both the inside and outside of the buds for foreign material. Moisture is only required for
products tested to the flower standard, so a vape, tincture, or edible COA that shows moisture as "not tested" or
"N/A" is complete; it is not missing anything. Solventless concentrates are the exception: because kief, ice-water
(bubble) hash, and rosin (including live rosin) are made by separating trichomes mechanically with no solvent,
Florida tests them exactly like flower, so their COAs should show a moisture result below 15.0% and a water activity
of 0.65 Aw or less, not the looser 0.85 Aw limit that applies to solvent-based extracts.
A note for edible patients: servings, totals, and homogeneity
An edible COA, annotated across three pages: the serving math, Total THC per container, a below-LOD cannabinoid, the label deviation and the homogeneity result. Excerpts from a Kaycha Labs certificate for GrowHealthy's MOODZ Papaya gels, September 2026. See the complete certificate.
Serving math: a 42.0 g package, 4.5 g per serving, 10 servings. Check these first on any edible.
Total THC per container: 102 mg, so about 10.2 mg per piece. Florida caps a serving at 10 mg and a package at 200 mg, each with a 15% allowance.
Below the LOD: CBDA reads "<0.0000670", the same number as its LOD printed below. The new-format notation, even on an edible's cannabinoid panel.
On an edible the useful row is mg per unit (101 mg delta-9 THC in the package); the percent row (0.241%) means little on its own.
Package label deviation: the tested THC is 1.52% off the label. Edibles may differ from the label by up to 15%.
Homogeneity: the lab tests individual pieces and reports the spread as a relative standard deviation, 3.21% here, against a 25% limit. Florida also fails a batch if any single piece is more than 50% off the average.
Edible COAs deserve a second look because the numbers are about milligrams per serving, not percentages. A
10-piece gummy pack at 10 mg each is a 100 mg package; the percentage of THC by weight is tiny and tells you nothing
useful. When reading an edible COA, check three things: the serving size, the mg of THC (and CBD) per
serving, and the number of servings per package, so you know the total in the container.
Homogeneity is the edible-only test. It checks that the active ingredient is spread evenly through the batch,
so that every piece of a ten-piece pack carries the same dose rather than one piece carrying most of it. The lab tests
several individual servings, averages them, and calculates how much they vary. A small spread means consistent
dosing.
Florida requires
A single serving, or a single-serving portion of a multi-serving edible, may contain no more than 10 mg of
THC. A multi-serving edible may contain no more than 200 mg of Total Active THC per package. Edibles
may vary up to 15% from those thresholds before failing.
Label accuracy for edibles is 15%: the tested Total THC, Total CBD, or any other labeled cannabinoid may differ
from the label by no more than 15%.
Every multi-serving edible batch gets homogeneity testing. The number of units and servings tested
scales with batch size: a batch of 1 to 249 units has 3 servings tested from 1 unit; a batch of 5,000 to 7,499
units has 28 servings tested from 14 units; the largest batches (90,000 to 100,000 units) have 50 servings tested
from 25 units. A batch over 100,000 units is tested as multiple 100,000-unit batches.
The lab calculates the percent relative standard deviation (%RSD) of Total Active THC and Total Active
CBD across all servings tested. A %RSD above 25%, or any single serving more than 50% off the
average, fails homogeneity. The %RSD must be printed on the COA.
Edible potency is calculated using the measured weight of the product, and the lab must homogenize the whole
product (without removing sugar coatings) before testing.
%RSD = (standard deviation of servings ÷ average of servings) × 100
So a pack whose tested servings read 9.8, 10.2, 10.0, 9.6, 10.4 mg has an average of 10.0 mg and a %RSD of about
3%: a well-made, evenly dosed product.
Red flags worth a second look
A few signals are worth a pause or a question at the counter:
Mismatched or missing batch number. The COA must correspond to your exact product batch. No match, no
confidence.
An old test date, or an expired one. Florida COAs expire no more than one year after the sample date.
Cannabinoids are fairly stable but still degrade slowly (THC converts to CBN over time), and terpenes fade faster.
A report many months old may not reflect the current terpene character even if it is still valid.
No safety panel. A complete COA includes potency and every contaminant screen required for that
product type. A potency-only sheet tells half the story.
A "R&D ONLY NOT FOR RETAIL" stamp. Labs also run research samples, and those COAs must be labeled as
such. An R&D COA is not a compliance COA and cannot be used to sell product.
A retest or amendment note you cannot explain. Amended COAs are legal and must carry a bold notice plus a
narrative of what changed. Read the narrative. A corrected label is routine; a changed contaminant result deserves
a question.
Suspiciously round numbers. Real lab data is reported to three significant figures and shows natural
variation. If everything reads like a tidy whole number, ask questions.
Flower above 32% Total THC. Not impossible, but Florida requires the lab to confirm any flower result above
32% with a second preparation and report it to the OMMU. It is a number worth checking against the strain's
history.
A lab you do not recognize. Look for a Florida CMTL and an ISO/IEC 17025 reference. The OMMU publishes the
list of certified labs.
Keep this in perspective. A passing COA is a meaningful safety signal, but it is not a
personal medical guarantee, and a single failing analyte does not necessarily mean a product would have harmed any
individual. Use the COA to inform your choices, and rely on your physician for medical guidance.
Do and don't: choosing medicine with a COA
Do
Match the batch number first. Everything else on the report depends on it.
Read the summary grid, then the details. PASS on every applicable test is the baseline; the detail
pages tell you how clean.
Compare Total THC, not delta-9 THC, across flower. And compare Total CBD and the ratio for balanced or
CBD-forward products.
Use the terpene profile as a fingerprint. Learning which terpene profiles work for you, and which do
not, makes future choices more intuitive than strain names alone.
Check the serving math on edibles. Serving size × servings per package = total. Look at the %RSD for
consistency.
Note the test date. Fresher is better for terpenes and for vapes.
Ask. MMTC staff are used to being asked for COAs. If a report cannot be produced, that is an answer
too.
Don't
Don't assume percentage equals potency. A 30% flower is not necessarily a better experience than a 22%
flower; terpenes, cannabinoid mix, freshness, and how you use it all matter.
Don't read a low delta-9 THC number on flower as "weak." Look at THCA and Total THC.
Don't treat Total Cannabinoids as a THC number. It is the sum of everything, including CBD, CBG, and
the acids.
Don't skip the contaminant pages. ND across the board is the goal; a passing number close to a limit
is worth knowing about.
Don't panic over a "J" or an asterisk. It marks a trace between the LOD and the LOQ: detected, estimated, and
almost always far below the limit. It is a pass.
Don't compare across product types without adjusting. Inhaled and non-inhaled products are held to
different limits, and flower is tested differently than concentrates.
Don't only consider the cannabinoids. The rest of the report is where the real information about
safety and character lives.
Florida testing requirements at a glance
Every test Florida requires, by product type. "Flower" is Usable Whole Flower Marijuana (plus kief, bubble hash, and
rosin); "inhaled" is a derivative product meant for inhalation (vapes, concentrates); "not inhaled" is a derivative
product not meant for inhalation (tinctures, capsules, topicals); edibles are their own category.
Test
Flower
Inhaled
Not inhaled
Edibles
Key limits
Cannabinoid profile (11 cannabinoids)
Required
Required
Required
Required
Reported in mg/g and %, 3 sig. figs
Total Active THC and CBD (mg/package)
Required
Required
Required
Required
Flower > 32% THC must be confirmed
Label accuracy
Required
Required
Required
Required
10% (> 25 mg), 50% (≤ 25 mg), 15% for edibles
Terpenes
Voluntary
Voluntary
Voluntary
Voluntary
No state limit; reported as received
Microbials (STEC, Salmonella, 4 Aspergillus spp.)
Required
Required
Required
Required
None present in 1 g
Listeria monocytogenes
Required
–
–
Required
None present in 1 g
Total yeast and mold
Required
Required
Required
Required
< 100,000 CFU/g (< 10 for transmucosal)
Mycotoxins (aflatoxins B1, B2, G1, G2, sum; ochratoxin A)
Required
Required
Required
Required
< 20 ppb each
Residual solvents (21)
–
Required
Required
Required
Two limit columns; see table above
Heavy metals (Pb, As, Cd, Hg, Ni, Sn)
Required
Required
Required
Required
Pb < 500 ppb all; others vary by route
Agricultural agents (66)
Required
Required
Required
Required
Two limit columns; total load < 5 / 30 ppm
Water activity
Required
Required
Required
Required
≤ 0.65 Aw flower; ≤ 0.85 Aw others
Moisture
Required
–
–
–
Below 15.0%
Filth and foreign material
Required
Required
Required
Required
≤ 1% by weight, ≤ 10% of area; no visible feces or mold
Homogeneity (%RSD)
–
–
–
Multi-serving only
%RSD ≤ 25%; no serving > 50% off average
Serving and package caps
–
–
–
Required
10 mg THC/serving; 200 mg/package (±15%)
Rules behind this page. Florida Administrative Code Chapter 64-4: Rule 64-4.300 (definitions, including Total
Active THC), 64-4.301 (lab certification and the testing fields for each matrix), 64-4.308 (sample testing and every
acceptable limit), 64-4.311 (what a COA must contain), all effective May 28, 2026; Rule 64-4.212 (MMTC compliance
testing) and 64-4.013 (pesticide use). These permanent rules replaced emergency rules 64ER20-39 (sample testing) and
related 64ER20-series rules that governed testing from 2020 until 2026. Two transition periods matter for COAs you
read in 2026: labs had 60 days from May 28, 2026 to begin reporting Listeria, nickel, and tin, and have one
year to add delta-8 THC to the Total Active THC calculation.
This page will be updated as the rules change. If a COA you are reading uses a limit different from the ones above,
the COA reflects the rule in force on its test date, and the limit printed on the COA is the one that applied.
Products whose menu does not say what they are made of, and where no default is safe: a syringe that names no
terpenes, a topical, a concentrate with no extract word, "solventless" alone, "full spectrum" at most MMTCs. A patient
sees "Not stated" until you decide. Your decision is kept over every rule, on every later import and heal.
Hints from the Master Product Guide
Likely values the guide gives for these brands' vapes, used only where the card says nothing more. The guide is from
a while ago: each line says how many products it names now, so you can confirm or drop it.
Filed as infused pre-rolls
Florida sells no infused pre-rolls, so these are most likely strain names read as an infusion. Nothing is moved
until you say.
Brands to review
Brands on a menu now that the MMTC's known list does not have (seeded from the Master Product Guide). A new brand
saves and shows like any other either way; this only asks for your eye. Approving adds it to the known list.
Reported prices
Anyone can flag a listing's price as wrong from its product page. It is the one public write this app accepts, and it
never touches the real data by itself (src/db/reports-queue.js). Approving writes the reported price into the
listing; rejecting just dismisses it. Neither can be undone from here, so double-check against the operator's own
menu before approving.
Where the automatic reading was wrong
Every time you override what the classifier concluded, the disagreement is
recorded here with the exact text it was working from. This is the part
that turns hand entry into a scraper: these rows are the specification for
what the automated parser has to get right, gathered from real menus
instead of guessed at in advance.