Hi!

I have a pile of unindexed reads, including some PhiX, from a poor run on a NexSeq. Can anyone suggest some tools or techniques I can apply to this data just to try get a better idea of why the run went poorly?

Much appreciated.
Besides the obvious issue of contamination (which you can check by @WouterDeCoster's method) you should also check on the following.

NOTE: If the reads are truly "un-indexed" (as in having "no index read" as opposed to having landed in the "undetermined" file since they can't be de-multiplexed using indexes expected to be present in the run, then the following does **not** apply).

If you are using bcl2fastq v.2.17.* and have access to the flowcell folder you could look at the `DemuxSummaryF1L*.txt` files in folder containing demux data. These files list all "undetermined" barcodes present (in addition to the ones properly demultiplexed) in that specific lane (there are other ways of counting the barcodes should you only have access to the undetermined*.fastq.gz file).

One common issue is poor selection of indexes for pooling. Having low diversity indexes along with a borderline overloaded run can  lead to "N" basecalls in indexes leading to problems with demultiplexing. You can overcome this partially by allowing one or two mismatches in tag reads but depending on the selection of indexes/length of your tag read this may or may not work well.

Illumina has published guides on what indexes to use for pooling for variable smaller number of samples (for both nextera/truseq kits) if that indeed is the issue.