Starting from Space Ranger 3.1.2, the web_summary.html file now includes the metrics "Number of UMIs per mm² of Tissue" and "Number of Reads per mm² of Tissue". These metrics are intended to assist in sensitivity comparisons. For the most accurate comparison, the sequencing depth should be similar between samples. Please refer to our technical note for a more in-depth discussion on sensitivity analysis, key concepts, and considerations: Visium HD Spatial Gene Expression Performance.
Question: How do I compare the sensitivity of Visium HD to Visium v2?
Answer: One approach for determining the sensitivity of the Visium HD Spatial Gene Expression (Visium HD) relative to Visium CytAssist Spatial Gene Expression (Visium v2) is to quantify the number of UMIs detected in each assay. To accurately compare sensitivity, the UMIs should be compared on a per-tissue area basis. Due to differences in slide design between Visium v2 and Visium HD, comparing sensitivity on a per-tissue area basis is more appropriate than per-spot or per-square comparisons.
Ideally samples used for sensitivity comparison should come from the same tissue block and have similar sequencing depths per fraction of capture area covered. This article uses the following publicly available paired Colon cancer 10x datasets to illustrate how to perform the UMI per-tissue area calculation:
The sequencing depth differs between these samples. Therefore, we will also demonstrate how to properly downsample each sample to match the sequencing depth per fraction of capture area covered before determining the sensitivity for each assay.
For sensitivity calculations, after running the downsampled FASTQ files through the spaceranger count pipeline, the web summary is required for each dataset, and the Loupe Browser cloupe file is needed for the Visium v2 dataset.
To match the sequencing depths for a Visium HD and Visium v2 assay follow these steps to downsample the FASTQ files if required:
Visium HD Downsampling
We determine the minimum sequencing depth for a sample by multiplying the recommended minimum sequencing depth for a completely filled capture area (275 million reads) by the fraction of the capture area covered by tissue. If the Space Ranger count pipeline has already been run on the sample, the web summary file contains the number of 8 µm binned squares under tissue, which can be used to determine the fraction of the capture area covered by tissue. In the 'Key Metrics' table on the 'Summary' tab of the web summary file, we see that the 'Number of 8 µm binned squares under tissue' is 487,552. Next, we need to know the total number of 8 µm bins to calculate the fraction of the capture area covered, which for a 6.5 mm Visium HD capture area is 702,244 8 µm bins. Starting with Space Ranger v3.0.1, in the web summary ‘Summary’ tab the percent of the capture area covered is reported in the ‘Sequencing’ table.
Using this information the minimum recommended sequencing depth is calculated as follows:
275,000,000 reads x fraction of the capture area covered by tissue = minimum recommended sequencing depth
275,000,000 reads x (Number of 8 µm binned squares under tissue) / (Total number of 8 µm bins) = minimum recommended sequencing depth
275,000,000 reads x 487,552 8 µm binned squares / 702,244 8 µm bins = minimum recommended sequencing depth
275,000,000 reads x 0.694 = 190,850,000 reads
If the samples have not been run through the Space Ranger count pipeline then you can follow this knowledge base article to determine the percentage of the capture area using Loupe Browser and the CytAssist image: How do I calculate the percentage of the capture area covered, so that I can determine the recommended sequencing depth for Visium HD Spatial Gene Expression libraries?
Finally, the HD library was sequenced across four lanes, so for each set of FASTQ files we would need the following number of reads:
Minimum recommended number of reads / number of lanes = reads per FASTQ file
190,850,000 / 4 = 47,712,500 per FASTQ set
To downsample the FASTQ files we will use seqtk as follows:
# Download the FASTQ files or navigate to the FASTQ file containing directory.
# If the FASTQ files are compressed into an archive, we will need to extract them.
# In this example they are in a tar archive, to extract the files use a command like the following:
tar xvf fastqs.archive.tar
# Where fastqs.archive.tar is the name of the archive, which is Visium_HD_Human_Colon_Normal_P3_fastqs.tar in this case.
# Decompress each set of FASTQ files
gunzip Visium_HD_Human_Colon_Normal_P3_fastqs/*.fastq.gz
# Next for each FASTQ file we subsample using seqtk and compress.
# For example,the following command when run in the FASTQ directory will subsample and compress the indicated FASTQ file:
seqtk sample -s 1 Visium_HD_Human_Colon_Normal_P3_S3_L001_R1_001.fastq 47712500 | gzip > downsample_Visium_HD_Human_Colon_Normal_P3_S3_L001_R1_001.fastq.gz
# Repeat this command for each FASTQ file (R1, R2, I1 and I2). Be sure to use the same seed (-s 1), so that the same reads are selected.
After downsampling the Visium HD FASTQ files, run the Space Ranger count pipeline as normal to generate a downsampled web summary file for use in the sensitivity analysis.
Visium v2 Downsampling
To compare Visium HD sensitivity to Visium v2 sensitivity, we want to maintain a similar ratio of sequencing depth to fraction of the capture area covered as the Visium HD assay. To subsample we will need to know the number of spots under the tissue. Again, if the full dataset was processed the web summary will contain the needed information. Otherwise, follow this knowledge base article, which illustrates how to find the number spots under tissue: How do I use Loupe Browser to estimate the number of tissue covered spots in my Visium sample. The “Number of Spots Under Tissue” is found on the “Summary” tab of the web summary file. In this case there are 3,887 tissue associated spots. We also need to know the total number of spots, since this sample was run on a 11 mm slide the total number of spots is 14,336 (for a 6.5 mm slide there are 4,992 spots). Finally to determine the sequence depth we will follow the Visium HD guidelines, so that we maintain the ratio of sequencing depth to fraction of capture area covered.
Using this information the recommended minimum sequencing depth is calculated as follows:
275,000,000 reads x fraction of the capture area covered by tissue = minimum recommended sequencing depth
275,000,000 reads x (Number of Spots Under Tissue) / (Total number of Spots) = minimum recommended sequencing depth
275,000,000 reads x 3,887 spots / 14,336 spots = minimum recommended sequencing depth
275,000,000 reads x 0.271 = 67,783,901 reads
Finally, the Visium v2 library was sequenced across two lanes, so for each set of FASTQ files we would need the following number of reads:
Minimum recommended number of reads / number of lanes = reads per FASTQ set
67,783,901 reads/ 2 = 33,891,950 per FASTQ file
We will follow the same procedure to downsample the Visium v2 sample. To review, to downsample the FASTQ files we will again use seqtk as follows:
# Download the FASTQ files or navigate to your FASTQ file containing directory.
# If the FASTQ files are compressed into an archive, we will first need to extract them. In this example they are in a tar archive, to extract the files use a command like the following:
tar xvf fastqs.archive.tar
# Where fastqs.archive.tar is the name of the archive, which is Visium_V2_Human_Colon_Normal_P3_fastqs.tar in this case.
# Decompress each set of FASTQ files
gunzip Visium_V2_Human_Colon_Normal_P3_fastqs/*.fastq.gz
# Next for each FASTQ file we subsample using seqtk and compress.
# For example,the following command when run in the FASTQ directory will subsample and compress the indicated FASTQ file:
seqtk sample -s 1 Visium_SD_Human_Colon_Normal_P3_S1_L001_R2_001.fastq 33891950 | gzip > downsample_Visium_SD_Human_Colon_Normal_P3_S1_L001_R2_001.fastq.gz
# Repeat this command for FASTQ file (R1, R2, I1 and I2). Be sure to use the same seed (-s 1), so that the same reads are selected.
After downsampling the Visium v2 FASTQ files, run the Space Ranger count pipeline as normal to generate a downsampled web summary and Loupe Browser file for use in the sensitivity analysis.
To calculate the number of UMIs per-tissue area follow these steps:
Visium HD Sensitivity Calculation
Record the “Number of 8 µm binned squares under tissue” and the “Mean UMIs per 8 µm bin” in the “Key Metrics” table on the “Summary” tab of the web summary file. In this example the number of bins under tissue is 487,552 and the mean UMIs per 8 µm bin is 138.3.
We find the total area under the tissue in µm2 by multiplying the number of bins under the tissue by 64 µm2 (the area of a 8 µm bin).
Total area under the tissue = 487,552 bins x 64 µm2 /bin = 31,203,328 µm2
We find the total number of UMIs by multiplying “Mean UMIs per 8 µm bin” by the number of bins under the tissue.
Total UMIs= 487,552 bins x 138.3 mean UMI/bin = 67,428,442 UMIs
Finally the sensitivity is determined by dividing the total UMIs by the total area under the tissue.
Visium HD sensitivity = total UMIs / total area under the tissue
Visium HD sensitivity = 67,428,442 UMIs / 31,203,328 µm2
Visium HD sensitivity = 2.16 UMIs / µm2
Visium v2 Sensitivity Calculation
Record the “Number of Spots Under Tissue” on the top table of the “Summary” tab of the web summary file for the downsampled Visium V2 dataset. In this example the number of spots is 3,887.
We find the total area under the tissue in µm2 by multiplying the number of spots under the tissue by 8,660 µm2 (the approximate area of a spot and the surrounding empty space).
Total area under the tissue = 3,887 spots x 8,660 µm2/spot = 33,661,420 µm2
To find the total UMIs, we start by opening the downsampled Visium v2 dataset Sample P3 NAT's cloupe file in Loupe Browser, and then we create a custom cluster that covers all the spots in the sample. To do this we select all spots using the lasso tool, and then assign it a unique cluster and group name. In this case the cluster is called “all_spots” and the new group is “group1”.
Next we go to the “Features” menu, where we display the total UMIs per spot by entering “Genome Expression Sum” in the “Search genes/features” field.
After displaying the “Gene Expression Sum”, we navigate to the “Expression Distribution” plots, change the scale value to “Linear” and hover the mouse pointer over the violin plot to see the mean UMI per spot. In this case the mean UMIs per spot is 6,112.3. The mean UMI per spot is circled in red in the image below.
We find the total number of UMIs by multiplying the “mean UMIs per spot” value determined by inspecting the violin plot by the number of spots under the tissue.
total UMIs= 3,887 spots x 6,112.3 mean UMI/bin = 23,758,510 UMIs
Finally the sensitivity is determined by dividing the total UMIs by the total area under the tissue.
Visium v2 sensitivity = total UMIs / total area under the tissue
Visium v2 sensitivity = 23,758,510 UMIs / 33,661,420 µm2
Visium v2 sensitivity = 0.71 UMI / µm2
Visium HD vs Visium v2
Based on the sensitivity calculations for these two datasets, where we used the minimum sequencing depth requirements for Visium HD for both assays, we found that the Visium HD assay has a 3.04-fold increase in sensitivity compared to Visium v2 (2.16 UMI / µm2 divided by 0.71 UMI / µm2). Some tissue-to-tissue and sample block-to-block variability is expected, as tissue type and tissue block quality are dominant factors affecting sensitivity between Visium assays. Generally, Visium HD performance exceeds or is comparable to Visium v2 when sensitivity is calculated on a per-tissue area basis and both assays are sequenced at the same relative depth (see the table below for additional comparisons).
Species | Tissue | Primary Diagnosis |
Fold Change (Visium HD sensitivity / Visium v2 sensitivity) |
Human | Brain | Healthy | 0.62 |
Human | Prostate | Cancer | 1.08 |
Human | Breast | Cancer | 0.67 |
Human | Colon | Healthy | 1.72 |
Mouse | Brain | Healthy | 1.27 |
Mouse | Kidney | Healthy | 1.19 |
Products: Visium HD Spatial Gene Expression
Last Updated: Feb 2025