top of page
Writer's pictureolivertburton

Five ways to extract autofluorescence (and store it)

Is that a sufficiently clickbaity title? Perhaps it needs a subtitle like “how to achieve perfect unmixing with this one cheap trick.”


Joking aside, no, you will not generally get perfect unmixing with any of the methods I’m going to outline today. Before we get into investigating why that might be in future posts, let’s start by looking at the methods available to us, their advantages and drawbacks. I’m going to evaluate these very casually on ease of use, accuracy, reproducibility and potential for unmixing distortion. I’ll also address—to the best of my knowledge—what’s being unmixed and which cytometers allow you to use each method. Also, arguably these only represent three methods, not five.


If you’re just joining the autofluorescence (AF) series, I recommend reading these posts first to get some more background:

 

Now, on to the methods:

  1.  A single FSC/SSC gate

  2. Treating AF like a fluorophore

  3.  Autofluorescence explorer tools

  4. Storing unstained cells in the library

  5.  Storing AF “fluorophores” in the library

 

These methods are for identifying AF signatures to extract them from your multi-color samples. To look at how to remove AF from your single-color controls, see these posts or maybe use BioLegend compensation beads if you're really stuck.

 

Like many posts on this blog, this is going to be Aurora-centric. Generally, I’d say that the AF extraction on the ID7000 has less impact on the quality of unmixing obtained. That is not strictly the same as saying it works better on the ID7000, for what that’s worth.

 


Method 1: Setting a gate on FSC and SSC


Where can you use it? I think any spectral cytometer with AF extraction, but I’m not sure about the Bigfoot. This is the default method on the DiscoverS8 at the moment.


How? Draw a gate around the population you want to use as the AF control on the Unstained cells.


Best way to use it? Set the gate on the population that contains the cells that are the primary focus of your panel. If you’re working with T cells, gate on the lymphocytes. If your panel addresses macrophages, gate higher on SSC. Don’t include cells that aren’t what you want to analyze.


For a panel focused on lymphocytes, setting the scatter gate on the lymphocytes for AF extraction will generally position these cells at the intercept for all parameters.


Gating on monocytes will extract a similar but subtly different signature.



Normalized spectral signatures for the autofluorescence background for lymphocytes (top) and monocytes (bottom) after using the BD Cytofix-Cytoperm kit. Easier to see the differences now.


What does it do? As far as I can tell, you’re telling the software to get the median fluorescence intensity (MFI) for each fluorescence detector for the cells in the gate. This creates a spectral signature for that fluorescence background. This extracts (not subtracts) the background of the cells and diverts it into a new “channel” in your unmixed data called AF. This has the effect of reducing background, particularly in areas of the spectrum where your cells are autofluorescent, which is typically the middle of the violet (think BV510) and the middle of the UV (think BUV496).


Normalized spectrum for human lymphocytes after peptide restimulation for 24hrs. Same Aurora, same settings. The metabolism has kicked into gear.


Ease of use? Hard to get any easier.


Accuracy? Low, at least if we think about the total set of types of flow, even in immunology. Why? We're generalizing a single average (median) signature to all of the cells in the dataset, most of which won't be very average. This method works really well, though, in the case of lymphocytes or human PBMCs. Those are fairly homogeneous populations with pretty even AF profiles. So, if you have a mouse or human lymphocyte panel and gate on scatter to exclude other cells from “spiking” into your gating strategy, this can work well.


Reproducibility? Low generally, but high again for lymphocytes or PBMCs (even monocytes). If you gate on an abundant population with clear boundaries and few noisy cell types creeping in, you’re going to get similar AF profiles every time. If you’re trying to use this method to gate on less frequent high SSC cell types with variable amounts of noise from debris, other cell types or dead cells creeping into the gate, well, you’re going to get pretty different results every time.


Potential for unmixing distortion? High. You don’t get to see the normalized spectrum that is being unmixed at any point in the workflow on the Aurora or the S8. That means you can’t plan for it in your panel design and aren’t aware of what’s being unmixed in your data. That’s not a good situation to be in.

 



Method 2: Treating AF like a fluorophore


Where can you use it? Any cytometer, doesn’t even have to be spectral. This is the method we use in conventional flow. It’s also more or less what turned into the AF explorer tool on the Aurora.


How? Video below (or directly on YouTube). On the Aurora, you can create a new fluorophore in the library. Let’s call it “Macrophage AF”. Then add that fluorophore to your panel (not as the unstained, as an additional fluorophore like FITC or PE). Run the unstained sample that contains that fluorophore, then gate on the positive and negative to get the spectrum.



Video tutorial for how to add AF signatures in SpectroFlo software.


To use this new "fluorophore" in your experiment, just add it like any other during experiment setup.


Best way to use it? Use this to identify “spikes” of AF in your data that are reliably positioned. This usually occurs with tissue macrophage populations. They’re quite reproducible in their spectral profiles. You may want to combine this with the FSC/SSC “default” background subtraction method. That combination should allow you to remove the general background as well as one or two key intrusive AF signatures in a panel focused on multiple cell types. See below re distortion, though.


What does it do? Pulls out the AF signature with a strong fluorescence in the channel you’ve selected. Slightly differently to the other methods, this actually subtracts the background from the “positive” cells, which should be better to give a “purer” secondary AF signature. In practice, this makes next-to-no difference.


Ease of use? Pretty easy, I think, but I do this a lot, so I’m probably biased.


Accuracy? Like with any cell control, if you’ve got multiple signatures intruding into the same channel, you’ll have issues obtaining a clean spectrum. This is going to be more accurate, though, than simply gating on FSC and SSC because you’re taking the next step of isolating the AF signature you want in the fluorescence channel. Unlike the AF explorer tools (next), this isn’t intended to correct every AF spike in the data.


Reproducibility? High, in my experience. If you look for the same signature using the same channel each time, you’re going to find something pretty similar each time.


Potential for unmixing distortion? For a single channel like this, the potential for distortion is low because you can see the spectrum you’re unmixing. You can then design the panel around that signature and/or understand where you’re likely to have problems with resolution.


If you combine this with the FSC/SSC method to subtract background, though, you have to be very careful. If for instance, you tried to extract monocyte AF as a fluorophore and lymphocyte AF as background in human PBMCs, you can’t see that those spectra are nearly identical. There’s no prompt to stop you on the Aurora.


As with all of these methods, you want to look at what you’re actually trying to unmix.

 



Method 3: AF explorer tools


A quick comment before getting into this one: Use it carefully. Some of the worst unmixing errors I have seen come from using this tool. It doesn't have to be that way, and these tools can greatly improve your data.


This method, at least on the Aurora, is an evolution of the previous method. Here's a video on it before it was integrated into SpectroFlo.


Where can you use it? The Aurora and ID7000 both have versions of this.


How? I’m going to focus on the Aurora because I don’t use the ID7000 that much, sorry. On the Aurora, run the sample containing your AF signatures as the “Unstained” sample. Right click on it to enter the explorer tool. You can then gate on populations of cells using combinations of scatter and fluorescence parameters.



Best way to use it? For panels tackling multiple cell types in complex tissues, like lung or skin. Run the sample with the highest amount and diversity of AF as the Unstained. We’ll look at some hacks for multiple tissues later, as well as some more details on this tool.


Look at the spectral trace for areas of high variability (blue shading). Pick a couple channels (hint: V7, UV6, B3 and YG7 are often good) and plot them to look for variable populations.


Gate on them.


Include a gate on the lowest (non-AF) sizeable population as well. This is your background. You want to extract a profile very similar to this one to get the cells centered around zero.


Right click on the populations to “Extract AF from gate”.


On the Aurora, set the similarity threshold for vetting the AF lower, maybe 0.9. While you can technically just about unmix things with a similarity index of 0.98, it’s not a good idea and I really doubt you’re doing that with the fluorophores in your panel, so why would you with the AF?


Vet AF and Accept AF.


In a bit of kludge, you have to right-click on the newly created multiple-AF group to unmix using those signatures from the AF Explorer. If you don't, you just get the standard AF extraction (Method 1).


What does it do? It looks like it pulls out the MFI for every channel to create a spectral trace for each population you select.


Ease of use? Eh. Easy to get something, hard to be thorough or reproducible in my opinion.


Accuracy? It’s possible to get a very wide range of outcomes using this tool. In theory, this is the most accurate method because it really allows you to pick specific cell populations with well-defined AF signatures. If you gate just on scatter, or even scatter and one fluorescent channel, you can run into issues with other AF signatures intruding into your definition of that particular AF spectrum, just like we do with single stained controls (see post). This workflow is similar to the “control clean-up” in this post. Both of these require you to understand the relationships between the different signals in the data and what their impact is on the unmixed data.


Reproducibility? Low, I think. To do this reproducibly, you ‘d need to use the same combination of scatter and fluorescent parameters to gate your AF profiles each time. At present, there doesn’t seem to be any way to save your strategy between experiments (or even within an experiment if you want to re-enter the wizard to change something). This whole workflow encourages you to do things differently every time you run the experiment.


Potential for unmixing distortion? Pretty high because it encourages you to unmix many signatures. I think there's an unspoken premise here that more is better. It can be better; it can also be worse. In order to figure out what is actually better, you have to perform multiple rounds of unmixing with different combinations or think very carefully about what the AF signatures are doing to your data. The wizard on the Aurora includes both a plot of the spectral traces and a similarity index calculation, but those similarity indices are only between the different AF population. To understand how the AF profiles will interact with the fluorophores in your panel, you have to exit the wizard and unmix (in a very specific way that is not obvious), and at the end of this you can see the similarity indices for your fluorophores relative to the AF profiles. If at that point you want to change anything, well, you get to start over from the beginning.

 



Method 4: Storing unstained cells in the library


Where can you use it? The Aurora, probably the ID7000 as well. Not the S8.


How? Ah, this is the tricky bit. On the Aurora, you need to store reference spectra in the library and, critically, include a universal negative. You can include as many universal negatives as you like, for instance spleen, lymph node, blood, lung, spleen lymphocyte, spleen macrophage, spleen granulocyte, etc. For the purposes of storing AF, run extra universal negatives that are not actually used as universal negatives for any of your fluorophore controls. Run the unstained samples and set the FSC/SSC gate on the target cells. (See what we’re doing now? This is like the first method, but saving the spectrum for later.) What’s nice about this is that you can use it later for samples where you do not have enough cells for any controls. This is great for precious human samples.


Video tutorial here.
















Note that we can also benchmark these to track them over time, if we want. Benchmarking requires an Admin account in SpectroFlo.


To benchmark this AF spectrum, I would tick the box next to it (last entry in the list because I've just run it).



We can store many AF profiles in the library. Here's the profile for human blood lymphocytes after in vitro re-activation with peptide:



Best way to use it? To remove the background in experiments when you don’t have enough cells. Prepare unstained samples that have been run through your full protocol, particularly for hard-to-get samples. Save the spectra in the library with a name that allows you to find them later. To use these later for unmixing, you will need to set up the experiment without any controls, no Unstained, no nothing. You can then unmix using completely stored controls, including, critically, the matching “Unstained” from the library. You can only use one per experiment, although you can combine it with stored AF "fluorophores".



Be sure to select AF extraction:




What does it do? Extracts the spectrum of the cells as gated on FSC/SSC and stores that profile for unmixing in the library.


Ease of use? Slightly convoluted to set up, but super easy to use for unmixing.


Accuracy?  Same as the first method (Setting a gate on FSC/SSC).


Reproducibility? Pretty high on the Aurora. This allows you to see the spectrum, store it, benchmark it and update it in the software. That means you can assess drift or differences due to sample handling, donor variability or treatment condition.


Potential for unmixing distortion? Always present, but lower because you can actually see the normalized spectrum you’re unmixing and design around it. Not as good as the next method because you only get to see the spectrum when you’re storing it in the library, not during the actual unmixing workflow.

 



Method 5: Storing AF “fluorophores” in the library


Where can you use it? The Aurora, probably the ID7000 as well. Not the S8, to my knowledge.


How? Run reference controls, like in the last method. Instead of running your AF samples as universal negatives, create “fluorophores” (if you haven’t already) for each AF profile you want to extract and store. As before, this could be things like “splenic macrophage”, “alveolar macrophage”, “microglia” or “monocytes”.


Best way to use it? Unlike the previous method, this is best for AF “spikes”. You can use this for extracting those contaminating spikes, perhaps in addition to a background signature. This is handy if your “spike” of AF is in a particular tissue or sample type that you can’t always get ahold of. For instance, you might be working with cerebral spinal fluid or tumour leukocytes. If one day you have extra cells, run some unstained cells and store them in the library for future unmixing. It won't be perfect, but it might be better than not having it.


What does it do? Stores spectral traces in the library based on differential fluorescence in channels you’ve defined for each profile.


Ease of use? Not the easiest. You need to first define the peak channel (see the video), then run the samples as reference controls.


Accuracy? Same as Method 2 (Treating AF like a fluorophore), but the accuracy will vary with time both due to shifts in the instrument (minor factor) and run-to-run differences in cell preparation and activation state (major factor).


Reproducibility? Pretty high on the Aurora. As far as the unmixing goes, you’re using a defined spectrum and that gets updated with the QC. There’s more variability in AF in the samples between experiments than there is with actual fluorophores (if you’re careful), which is probably because of subtle differences in cell states. With inbred mice of a similar age and health profile, this can be really very similar from run to run. With human PBMCs, it can vary a bit, in part depending on storage time and conditions.


Importantly, we can actually draw conclusions about reproducibility with this method because we can compare between runs. Can’t do that with the other methods. What I mean by this is that you can store your control, say “macrophage AF”, then check it on a later date by running an unstained sample of the same tissue. If you’ve benchmarked the library control, you’ll get an overlay and a similarity index, like you would for a real fluorophore like PE. This way we know we’re identifying the same AF.


Potential for unmixing distortion? Always present, but lower because you can actually see what you’re unmixing and design around it.


You also get this fluorophore in the spectral similarity matrix during the unmixing, which is handy.



In future posts, we'll look more at the challenges involved in identifying and unmixing multiple AF signatures.






Little Egret, Titchwell Marsh RSPB, England

102 views0 comments

Recent Posts

See All

Comments


bottom of page