One of the auctions is called "Pfizer #162". The auction house labels it Sale #162. It covers bioreactors, chromatography systems and centrifuges at five locations, from Mansfield, Massachusetts to Bothell, Washington, and bidding ends on December 16.
It is one of 76 listings I pulled on November 12 from six US liquidation houses. These are the firms a company calls when a plant shuts, a lender forecloses or a lab has more equipment than it needs. Once the multi-day sales are merged, the 76 listings come to 68 separate sales, and 13 of the 68 are biotech or pharma equipment.
All of it is public. Each house posts an auction as a web page, usually about a month before the sale, with the seller, the address, the date and often a line such as "Plant Closed" or "By Order of the United States Bankruptcy Court". But that is six websites with six layouts, and nobody reads all of them every week.
I collected them with Industry Auction Signals, an Apify Actor I wrote. I asked for everything the six houses had posted in the previous 60 days. The run made 90 requests and took 72 seconds. The houses had posted 81 auctions and the Actor returned 76 of them. It leaves out cancelled sales and sales of an individual's estate by design, which accounts for the other five. No request failed and none was blocked. Every number below comes from that run, and where I counted something by hand I say so.
If you buy used equipment, sell to manufacturers or cover a region's economy, this is a list of who is clearing out a building and when.
The input
{ "sinceDays": 60, "maxSignals": 200 } That is the whole input. sinceDays goes by the day the house posted the auction, because the sale itself is usually weeks later. You can narrow a run with industries (31 tags such as pharma-biotech-lab, brewery-distillery or metalworking-cnc), with a keyword such as "bankruptcy", or with a list of houses.
Pricing is $0.005 to start a run plus $0.15 per listing returned, so this run is 76 × $0.15 + $0.005 = $11.405 at the Store price. That is far more per record than an ordinary scraper charges, and the reason is volume. The six houses posted 34 auctions between them in the most recent 30 days of this sample, so there is not much to charge for. Listings outside your filter are read and not charged.
76 listings, 68 sales
| House | Listings |
|---|---|
| Heritage Global Partners | 29 |
| Rosen Systems | 19 |
| Heath Industrial | 12 |
| CIA Industrial | 11 |
| Loeb Equipment | 3 |
| Schneider Industries | 2 |
A listing is not always a sale. A big sale gets one post per day. A contract drug manufacturer in Colorado is five listings, three days in Longmont and two in Boulder. A bakery is three and an electrical contractor is two. One lab sale in Plano, Texas appears at two houses with the same date and the same equipment. Merging those leaves 68 separate sales, and I use 68 whenever I give a share.
The biotech and pharma sales
| Listing | Where | Sale ends | What the house leads with |
|---|---|---|---|
| Pfizer #162 | Mansfield, MA and four other locations | Dec 16 | Bioreactors, chromatography systems, centrifuges |
| "State of the Art Global CDMO" (five sale days) | Longmont and Boulder, CO | Dec 1 to Dec 9 | 100+ ULT freezers, bioreactors, chromatography columns |
| VintaBio | Philadelphia, PA | Jan 8, 2027 | Gene therapy CDMO, by order of an assignee for the benefit of creditors |
| Caribou #2 | Berkeley, CA | Dec 18 | CRISPR genome editing equipment |
| Keenova #3 | Hazelwood, MO | Jan 13, 2027 | Biotech laboratory equipment surplus |
| Par Health | Hazelwood, MO and one other location | Dec 11 | Pharmaceutical manufacturing surplus: tablet press, vial inspection, labeling lines |
| Pace Analytical | Salem, NH | no date, offered as a whole | Turnkey aseptic fill-finish facility |
| "Major Bay Area Biotherapeutics Company", Sale #2 | not given | Nov 18 | Mass specs, HPLC, flow cytometers |
| PSS November 2026 | San Diego, CA and one other location | Nov 17 | Biopharma laboratory equipment |
| Pliant Therapeutics | South San Francisco, CA | Nov 10 | NMR, HPLC, liquid handlers, tablet presses |
| BioCryst | Birmingham, AL | Nov 6 | Mass spectrometers, HPLC, lab automation |
| AIRM | Westborough, MA | Nov 3 | Regenerative medicine laboratory equipment |
| MDxHealth | Plano, TX | Oct 20 | Molecular diagnostics laboratory |
I picked these 13 by reading the headlines. Twelve of them are at one house, Heritage Global Partners, so part of what this table shows is that house's specialty. It is still 13 separate sales of lab and drug-making equipment in 60 days.
The listings read alike. Those 13 sales make up 18 of the 76 listings, and HPLC appears in 8 of the 18 headlines, flow cytometers in 5 and mass spectrometers in 4. The Colorado sale opens with "100+ ULT freezers".
They rarely say why. Ten of the 13 give no reason. Two call the equipment surplus. One, the gene therapy manufacturer in Philadelphia, is sold by an assignee for the benefit of creditors, which is a way of winding a company down without going through bankruptcy court.
Seven of Heritage Global's 29 listings carry a sale number. Pfizer's is 162. Wren Kitchens, whose cabinet and stone production equipment is being sold by order of a bankruptcy court, is on Sale #4. I read the number as a running count of sales for that seller, though the listings don't say so.
The Actor's own pharma-biotech-lab tag is on 26 listings, where I count 18. The tag comes from keywords in the title and headline, so it also catches a specialty chemical plant whose headline mentions lab equipment and a plastics recycler called Natura PCR. I use the tag to narrow the list and then read the headlines.
Why things get sold
The houses often print the reason in the header. These are my counts, by listing.
| What the listing says | Listings |
|---|---|
| By order of a bankruptcy court | 13 |
| Equipment described as surplus | 7 |
| Plant or business closed | 6 |
| Consignment or multi-seller sale | 6 |
| Sold by a lender, a receiver or an assignee, or seized for taxes | 5 |
| Property sold or company relocating | 2 |
| No reason given | 37 |
Most of the bankruptcies are small businesses. Seven are at Rosen Systems, which has 18 of its 19 listings in Texas and puts the case number in the title. They include two beauty supply stores, a liquor store, a turf installer and a car dealer with seven luxury vehicles. Five are at Heath Industrial, all by order of the bankruptcy court for the Northern District of Illinois. Three of those five are for two electrical contractors, and one lists IT equipment and more than 700 new padlocks.
The six closures are the listings I would want if I covered local business. There is a distillery with a 1,000-gallon still built in 2018, a trailer maker, a maker of heavy steel rollers, a printing plant in Jacksonville and a specialty chemical plant in Cincinnati. The sixth is listed only as a "Startup Plastic Injection Molding Facility", and it includes two 716-ton molding machines built in 2025.
In the lender group, a secured party is selling a two-plant anaerobic digestion system on Long Island that the listing describes as a "$40 Million Investment" in unused equipment.
"No reason given" covers most of the biotech sales and two of the largest sales in the sample. One is a plastics recycling plant in Waller, Texas that its listing calls a "$150M" facility. The other is a bakery: two complete bread and bun plants in Ohio, 125,000 and 50,000 square feet, plus 346 titled trucks, tractors and trailers. The listing doesn't say the plants closed, so I haven't either.
About a month's notice
71 of the 76 listings give a sale day. The median gap between the posting and the sale is 33 days. Half of them fall between 20 and 45 days, the shortest is 6 and the longest is 91. On the day I ran this, 40 of those sales were still ahead.
So a new listing is roughly a month's warning that a specific building is being emptied, and it comes with an address.
Watching one industry
{ "industries": ["pharma-biotech-lab"], "houses": ["hgp"], "sinceDays": 30 } On November 12 that returned 6 listings from 9 requests in 5 seconds, which is $0.905.
For a standing watch I'd schedule it weekly with sinceDays set to 7. Each run then returns only what was posted that week, and a week with nothing new costs half a cent. Every record has a stable id made of the house and its post number, so if you want the new ones in Slack you can run it through Dataset Diff Monitor, another Actor of mine, with keyFields: ["id"] and notifyOn: ["added"].
How it reads the houses
All six run WordPress and publish each auction as a post, and WordPress serves an index of those posts as JSON at a path like /wp-json/wp/v2/auction. The Actor reads that index for the posts in your window. Then it opens each auction page once and reads the header block the house wrote: the date, the address and the reason line. It takes nothing from menus, sidebars or lot lists.
One of the six resets concurrent connections, so the Actor reads that house one page at a time, two seconds apart. That house sets the pace of the whole run.
Calling it from an agent
{"industries": ["brewery-distillery"], "maxSignals": 1} returns one listing for $0.155 in 5 to 15 seconds. Each record carries a sourceUrl to open and a one-sentence whyItMatters.
The Actor needs no login and runs with limited permissions, so it works through Apify's MCP server at https://mcp.apify.com/?tools=mdcurt/industry-auction-signals.
Fine print
- This is six houses that publish a public index. The big marketplaces (BidSpotter, HiBid, Proxibid, GovDeals) are not read, so none of these counts measures the whole market.
- It is one record per auction. Lots, bids and prices are not collected.
- Records show each page as it stood on November 12, 2026. Houses edit listings after posting, and one of these was renamed to hide the seller within a day.
- The biotech count and the reason table are my own reading of the 76 headlines. The Actor's
reasonfield agrees with my reading on 72 of the 76. It labels the two bakery listings and a stone fabricator as plant closures, and it has no label for the tax seizure. - The industry tags were right on 18 of 20 and 19 of 20 listings in two hand-checked samples.
- Five listings had no sale day, so the timing figures use the other 71.
- Dollar figures in quotes are the houses' own descriptions.
- The 76 records are in the Actor's source under
examples/, assample-dataset-60d-2026-11-12.json.gzand as a CSV.
If you follow one of these industries and a listing tells you something the trade press hasn't, leave a comment. I'd like to hear which one.

