UniProt vs. IntAct: Which Database Should You Use
By Dr. Zubair Khalid, DVM, MS, PhD ·

UniProt answers the question "what is this protein and what is known about it," while IntAct answers the narrower question "which other molecules does this protein physically interact with, and on what evidence." The rule of thumb is simple. Start at UniProt whenever you need to identify, annotate, map, or download protein sequences and function. Switch to IntAct when your question is about physical binding partners, interaction evidence, or building a protein-protein interaction (PPI) network. In practice, most serious interaction workflows use both, because UniProt accessions are the shared identifiers that let you move results between the two databases cleanly [1].
This guide walks through each database on its own terms, compares them on the criteria that actually decide real projects, works through four concrete scenarios, and ends with the mistakes that waste the most analyst time.
UniProt vs. IntAct for Protein Interaction Work: The Core Difference
The difference between UniProt and IntAct for protein interaction analysis comes down to the unit of storage. UniProt stores proteins. IntAct stores interactions.
UniProt (Universal Protein Resource) is a protein knowledgebase, meaning a curated, structured catalog of protein sequences plus functional annotation. It is organized into UniProtKB, the UniProt Knowledgebase, which splits into two sections. Swiss-Prot contains manually reviewed entries, each checked by curators with literature evidence. TrEMBL contains computationally annotated entries that have not been manually reviewed. For scale, the December 2015 release already held 550,116 reviewed Swiss-Prot entries covering 196,219,159 amino acids, alongside 555,270,679 TrEMBL entries, and both sections have grown substantially since [2].
IntAct (IntAct Molecular Interaction Database) is an interaction database maintained at the European Bioinformatics Institute (EMBL-EBI). Its primary unit is not a protein but an interaction record: an experimentally observed binding event between two or more molecules, annotated with the experimental method, publication, conditions, and participants. IntAct is one of the major open archives of molecular interaction data and follows the Proteomics Standards Initiative Movable Interface (PSI-MI) standard for molecular interactions, a community format that makes interaction records machine-readable.
Here is the twist that confuses almost everyone, and it matters for the uniprot vs intact protein interaction question. UniProt entries carry an "INTERACTION" comment block, and many of those annotated interactions are imported directly from IntAct curation. UniProt entries also carry a cross-reference line to IntAct. So a single protein page in UniProt can show you its partners, but that display is a curated summary layered on top of another database. When you need the full evidence chain (which experiment, which paper, which isoforms, which conditions), you go to the source archive, and for physical PPIs that source is usually IntAct.
Side-by-Side Comparison
| Criterion | UniProt | IntAct |
|---|---|---|
| Primary purpose | Protein sequence and function knowledgebase | Molecular interaction database |
| Primary unit of record | A protein entry (per protein, per isoform where relevant) | An interaction or complex record (per experiment) |
| What you get | Sequence, function, domains, PTMs, subcellular location, orthology, disease links, cross-references | Binary interactions and complexes with experimental method, publication, and participant details |
| Interaction data | Annotated interaction summaries, many imported from IntAct | Primary, evidence-level interaction records |
| Evidence model | Curator-reviewed annotation with literature citations, plus automatic annotation in TrEMBL | Experiment-level annotation with detection method terms, publication, and confidence scores |
| Identifier backbone | UniProt accession, the de facto standard protein identifier | Participants referenced by UniProt accessions and other identifiers |
| Export formats | FASTA, XML, TSV, GFF3 via website and REST API | PSI-MI XML, MITAB (tab-delimited), via download and PSICQUIC service |
| Best for | Identifying proteins, ID mapping, functional annotation, retrieving sequences, proteome-scale downloads | Finding binding partners, filtering by experiment type, building PPI networks, complex analysis |
| Weak for | Retrieving the full interaction evidence chain | Annotating protein function beyond interactions |
| Typical user action | "Tell me everything about EGFR" | "Show me every reported EGFR interaction with its method" |
Read the table this way. UniProt is the protein's biography. IntAct is the protein's contact list, with receipts attached.
UniProt on Its Own Terms
What lives inside an entry
A UniProt entry is dense, and knowing its structure is the foundation of any uniprot database tutorial. Each entry carries:
- The canonical sequence and, where relevant, alternative isoforms produced by alternative splicing.
- Function annotation written by curators, tied to Gene Ontology (GO) terms.
- Domain and family annotations from sources such as Pfam and PROSITE.
- Post-translational modification (PTM) sites, meaning chemically modified residues such as phosphorylation or ubiquitination.
- Subcellular location, for example "nucleus" or "plasma membrane."
- Cross-references (the DR lines in flat-file format) to dozens of other resources, including IntAct, PDB, STRING, and pathway databases.
- Literature citations linked to specific annotations.
- Sequence conflicts, variants, and disease associations for reviewed entries.
The interaction-relevant part is the INTERACTION comment block. For a well-studied human protein such as TP53, this block lists dozens of partners, each tagged with the interaction type (for example "direct" versus "association"), the number of publications, and, in the entry, a link back to the contributing source. This is why many analysts first meet interaction data inside UniProt without realizing they are looking at imported IntAct content.
How to use UniProt: a practical tutorial
The website at uniprot.org is the entry point for most people. A search box query uses a fielded syntax. To find reviewed human TP53:
TP53 AND reviewed:true AND organism_id:9606
The reviewed:true filter restricts results to Swiss-Prot, which is what you want almost every time you need reliable annotation. organism_id:9606 is the NCBI taxonomy identifier for humans. This exact pattern (gene symbol plus reviewed filter plus taxonomy filter) is the single most reusable habit in a uniprot database tutorial, because it eliminates the most common failure mode, which is pulling the wrong ortholog or an unreviewed predicted entry.
For programmatic work, the UniProt REST API is the workhorse. Fetching one entry as JSON looks like this:
curl "https://rest.uniprot.org/uniprotkb/P04637.json"
Replace .json with .txt for flat file, .xml for XML, or .fasta for sequence only. For bulk retrieval, the stream endpoint takes a query:
curl "https://rest.uniprot.org/uniprotkb/stream?query=organism_id:9606+AND+reviewed:true&format=tsv&fields=accession,gene_primary,protein_name,cc_interaction"
That command downloads every reviewed human protein with the interaction comment column included, which is often the fastest way to get a first-pass partner list for a whole proteome.
When your input list uses gene symbols, Ensembl IDs, or RefSeq accessions, you need identifier mapping (ID mapping), the process of converting one identifier namespace to another. UniProt's ID mapping service handles this:
curl -X POST -d "ids=TP53,EGFR,BRCA1" -d "from=GeneName" -d "to=UniProtKB" "https://rest.uniprot.org/idmapping/run"
You poll the returned job ID, then retrieve results. This single step is where most interaction workflows begin, because interaction databases match proteins by accession, not by gene symbol.
A third UniProt strength, and a genuinely underrated one for interaction work, is disorder annotation. Intrinsically disordered proteins (IDPs) and intrinsically disordered regions (IDRs) lack a fixed three-dimensional structure and frequently mediate one-to-many and many-to-one binding, which makes them network hubs. Published method chapters explicitly recommend combining UniProt with disorder databases such as DisProt to assess the disorder status of proteins inside a PPI network before interpreting it [3]. In other words, before you trust a partner list, UniProt lets you check whether your protein of interest is a compact enzyme or a floppy hub whose partner list is enormous by nature, not by artifact.
When to use UniProt
Use UniProt when you need to do any of the following:
- Confirm the identity, name, organism, and sequence of a protein.
- Map a mixed list of gene symbols and accessions into one identifier system.
- Pull functional annotation (GO terms, domains, PTMs, location) to interpret a protein set.
- Download complete proteomes for a species in FASTA format.
- Get a quick, curator-reviewed view of who a protein interacts with, with the understanding that the full evidence lives elsewhere.
If your question begins with "what is this protein," UniProt is the answer regardless of what comes next.
IntAct on Its Own Terms
What lives inside an interaction record
An IntAct record describes an observed interaction with a precision UniProt does not attempt. Each record carries:
- Participants, typically two proteins but sometimes more for complexes, each identified by accession (usually a UniProt accession) plus database-specific identifiers.
- The experiment in which the interaction was observed, with the publication (PubMed ID), the authors, and the detection method annotated with a controlled vocabulary term from the PSI-MI molecular interaction ontology. For example, "two hybrid" (yeast two-hybrid screening), "anti bait coimmunoprecipitation," or "x-ray crystallography."
- Interaction type, distinguishing physical association from, say, genetic or enzymatic relationships captured in the same framework.
- Confidence scores, a numeric weight assigned by the IntAct scoring system that weighs the amount and type of evidence.
- Conditions where recorded, such as host species, tissue, or experimental construct details.
This evidence-level structure is the database's defining feature. Two records can connect the same pair of proteins and still carry different information, because one was seen by yeast two-hybrid and another by co-crystallography. That granularity is exactly what a careful analysis needs and exactly what a flat partner list destroys.
How to use IntAct: practical access paths
The web interface at EBI lets you search by gene name, protein accession, publication, or detection method. Results appear as a network of binary interactions, filterable by method, species, and interaction type.
For programmatic access, IntAct exposes a PSICQUIC service. PSICQUIC (Proteomics Standard Initiative Common QUery InterfaCe) is a community standard REST interface for querying molecular interaction databases. A query against IntAct for human BRCA2 interactions, returning the tab-delimited MITAB format, looks like this:
curl "https://www.ebi.ac.uk/Tools/webservices/psicquic/intact/webservices/current/search/query/BRCA2%20AND%20species:9606?format=tab25"
Each row of MITAB output contains 15 tab-separated columns, including identifiers for both participants, alternative identifiers, aliases, detection methods, publication identifiers, interaction type, and the confidence score. MITAB is the format you want for spreadsheet inspection and for feeding network tools. PSI-MI XML is the richer format you want when participants, features, and experimental details need to survive round trips in a pipeline.
For bulk work, IntAct provides full downloadable files by species. A common reproducible pattern is to download the human MITAB file once per analysis, checksum it, and filter locally. Filtering by detection method is a genuinely powerful move. If your downstream question cannot tolerate yeast two-hybrid false positives, you exclude that method term and keep only, say, coimmunoprecipitation and crystallography evidence. No partner list shown in UniProt gives you that control at query time.
IntAct also connects to the Complex Portal, the EBI resource for curated macromolecular complexes, so a query can distinguish "A binds B" from "A and B are subunits of a larger assembly."
When to use IntAct
Use IntAct when you need to do any of the following:
- Retrieve every reported interaction for a protein with full experimental evidence.
- Filter interactions by method, publication, organism, or confidence.
- Build a PPI network for import into Cytoscape or a graph database.
- Distinguish direct physical binding from looser associations.
- Extract gold-standard positive pairs for benchmarking.
If your question begins with "who does this protein touch and how do we know," IntAct is the answer.
Why the Two Databases Get Confused
Three design choices create the recurring UniProt vs. IntAct mix-up.
First, UniProt deliberately aggregates interaction data. The INTERACTION comment blocks in UniProt entries are, in large part, curated records imported from IntAct and related resources. A reader who lands on the UniProt page for their protein sees partner names and reasonably concludes that UniProt "has" interaction data. It does, but as an integrated summary, not as the primary archive.
Second, the identifier systems are shared rather than separate. IntAct references its participants primarily through UniProt accessions, and cross-database integration tools routinely use UniProt codes as the join key to compare and reconcile interaction records across resources [1]. Because you type the same accession into both websites, they feel like one system. They are not. UniProt owns the protein identity, IntAct owns the interaction evidence, and the accession is the bridge.
Third, downstream resources blur the boundary on purpose. Data warehouses such as Atlas were built to locally integrate UniProt, IntAct, HPRD, BIND, DIP, MINT, GO, and NCBI Taxonomy behind a single query interface [4]. Meta-databases and integrations such as Protopia explicitly fold IntAct, DIP, HPRD, and iHop results together, reconciling redundancies using UniProt codes [1]. When tools present five databases as one seamless answer, the question "UniProt or IntAct" feels outdated. It is not outdated, because understanding which layer supplies which fact is still what separates a defensible analysis from an untraceable one.
The Criteria That Decide Real Choices

Scale and coverage
The two databases differ enormously in what they cover. UniProtKB, including TrEMBL, cataloged over 555 million TrEMBL entries by the end of 2015 and has grown since, because TrEMBL ingests every new sequence record [2]. Structure-based resources have exploited that breadth directly. The 3D-interologs project, which infers interactions across species from three-dimensional structural templates, searched the UniProt database of 4,826,134 protein sequences to infer 173,294 interactions, and folded in 110,686 interactions, about 39 percent of its 283,980 total, summarized from IntAct [5]. That design tells you something practical. UniProt supplied the protein universe. IntAct supplied the experimentally grounded interaction subset. Both were needed, and they served different layers of the same problem.
The same division of labor appears in machine learning resources. KUPS, a service for constructing benchmark datasets of interacting and non-interacting protein pairs, drew its 185,446 interacting pairs from five primary sources, namely IntAct, HPRD, MINT, UniProt, and the Gene Ontology, and paired them with around 1.5 billion non-interacting pairs generated under four negative-sampling strategies [6]. Notice that UniProt and IntAct appear side by side as distinct primary sources. UniProt contributed protein-level annotation used to build features. IntAct contributed the experimental interaction pairs used as positives. Neither substituted for the other.
Evidence quality and curation model
UniProt reviewed entries are curator-verified, which means a human read the literature and attached annotation with evidence. TrEMBL entries are automatic, which means you should treat their annotations, including any interaction annotations, as predictions requiring verification. IntAct records are also curated, but the curation targets the experiment: curators capture what was actually measured, in which system, with which constructs.
The practical consequence is that IntAct lets you be skeptical in a structured way. You can exclude low-evidence methods, restrict to interactions with multiple publications, or weight records by confidence score. UniProt's interaction summary does not offer that dial. If evidence quality is your binding constraint, query the archive that stores evidence, which is IntAct.
Identifier handling
Interaction analysis is identifier analysis. Partner lists that come back keyed to gene symbols from one database and Ensembl IDs from another will silently break your joins. Because IntAct participants are referenced by UniProt accessions and because cross-database tools use UniProt codes as the reconciliation key [1], the cleanest workflow maps everything to UniProt accessions first, then queries interactions. UniProt's own ID mapping service is the standard tool for that step, and it is also the reason "how to use UniProt" correctly belongs at the front of almost every interaction pipeline even when the interesting question is an interaction question.
Annotation depth versus interaction depth
UniProt wins decisively on annotation depth per protein. For interpreting why two proteins might interact, you need domains, PTMs, and localization, and UniProt carries all of it. One published compartment-level analysis illustrates how the two resources complement each other in a single pipeline. Its authors built a matrix of interaction frequencies between fifteen human cellular compartments using data from STRING, ANDSystem, IntAct, and UniProt together, then used that matrix to estimate the efficiency of KEGG signaling pathways and to rank pathway classes [7]. IntAct contributed interaction pairs. UniProt contributed the protein annotations (including subcellular location) that let every interaction be placed in a compartmental context. If your question requires interaction plus interpretation, you need both databases whether or not you planned to use both.
Worked Scenarios
Scenario 1: You cloned a protein from a parasite and want its partners
Suppose you work on a parasite protein and want to predict its host effects. This is close to a real published case. Investigators studying Fasciola gigantica Ras-related protein Rab10 cloned and expressed the recombinant protein, then predicted its protein interactors in silico by querying the databases IntAct, STRING, BioPlex, and BioGrid, followed by GO enrichment analysis of the retrieved sets [8]. The workflow is worth copying because of what it does and does not use. UniProt was the implicit identifier layer, as it always is when cross-referencing parasite and host proteins. IntAct was one of the interaction archives queried for partner evidence. If you had only queried UniProt, you would have gotten a thinner, pre-digested partner list. If you had only queried IntAct, you would have had evidence but no functional annotation to interpret the partners. Querying several archives, as this study did, is standard practice precisely because no single archive is complete.
Scenario 2: You have a differentially expressed protein list from a proteomics experiment
Proteomics datasets produce lists of protein identifiers, and the first move is always the same. Map every identifier to a reviewed UniProt accession using the ID mapping service, drop obsolete and unreviewed matches, and note the mapping losses. Only then do you have a stable key set. For the interaction layer, extract the interaction annotations from the UniProt entries as a first pass, but if any downstream claim will depend on specific pairs, pull those pairs from IntAct with their detection methods and prune methods that do not support your claim. UniProt gives the functional frame (GO enrichment, pathway membership, subcellular location), IntAct gives the verifiable wiring. Proteomics interpretation guides treat UniProtKB as the central annotation backbone for exactly this reason [2].
Scenario 3: You are building a machine learning dataset for PPI prediction
This scenario has the clearest split. Positives come from curated interaction archives, and IntAct is a primary source, as KUPS demonstrated by building 185,446 interacting pairs from IntAct, HPRD, MINT, UniProt, and GO with user-controlled filters for organism, interaction type, and experimental evidence [6]. UniProt's role in the same pipeline is feature generation: sequences, domain annotations, GO terms, and disorder annotations, all keyed to the same accessions. Using UniProt as a source of positives and IntAct as a source of features, or vice versa, would be a design error, and datasets built with explicit source roles like KUPS are what let groups compare algorithms fairly. If you are constructing training data, decide the role of each database before you download anything.
Scenario 4: You work in a non-model organism
Non-model organisms expose the coverage difference sharply. UniProtKB covers essentially every protein sequence that has been submitted anywhere, including automatically annotated TrEMBL entries for obscure species, while experimentally verified interactions for those species are scarce. Integrative projects handle this by combining both resources with new data. CyanoMapDB, a database of experimentally validated interactions in cyanobacteria, collected available data from UniProt, STRING, and IntAct, then mined additional interactions from co-fractionation mass spectrometry, producing 52,304 interactions among 6,789 proteins across 23 cyanobacterial species [9]. The pattern generalizes. In a species with thin interaction coverage, UniProt supplies the complete protein catalog and cross-references, IntAct supplies whatever experimental interactions exist, and any gaps need your own experimental or homology-based evidence, such as interolog mapping from structural templates [5].
Using Both Databases Together

The strongest workflows treat UniProt and IntAct as two layers of one stack.
Layer one, identity. Every protein in your analysis gets a canonical UniProt accession. This is the reconciliation key that integrative tools use when comparing interaction records across databases and detecting redundancies [1].
Layer two, annotation. For each accession, pull function, domains, PTMs, and location from reviewed UniProt entries. These annotations are what turn a partner list into a biological interpretation, and they are what enabled compartment-resolved interaction analyses built jointly on UniProt and IntAct data [7].
Layer three, evidence. For each interaction of interest, go to IntAct and retrieve the experiment-level record: method, publication, confidence, participants. Downstream resources often fold these archives together for convenience, but the evidence chain remains traceable only if you know which archive it came from.
Layer four, context. Depending on the question, add disorder status for hub-prone proteins using UniProt alongside dedicated disorder resources [3], or orthology and structural inference to extend sparse interaction maps across species [5].
A minimal reproducible pipeline looks like this. Input a gene list. Map to UniProt accessions. Download reviewed entry data in TSV. Extract interaction annotations for a first-pass network. Download the species-specific IntAct MITAB file. Filter to the accessions of interest, keeping method and publication columns. Compare the two partner sets, flag any pair in the final network whose only support is a method you cannot defend, and record the download date for both resources. Every published integration described above is a variation on that skeleton [1],,.
Common Mistakes and Limitations
- Treating the UniProt interaction block as complete evidence. The INTERACTION comments on UniProt entries are curated summaries, and many are imported from IntAct. When a reviewer or a collaborator asks for the experiment behind a pair, the UniProt page alone rarely answers them. Always follow the cross-reference into the interaction archive before a pair enters a manuscript.
- Querying with gene symbols instead of accessions. Gene symbols are ambiguous across species and across databases. TP53 in human, mouse, and rat are different entries with different partner lists. Map to UniProt accessions first, every time [1].
- Mixing reviewed and unreviewed entries. TrEMBL entries are automatic annotations [2]. If half your protein list maps to reviewed entries and half to unreviewed ones, your annotation table is half solid and half speculative. Report the split.
- Ignoring detection methods when building networks. A network built from all IntAct records pools two-hybrid screen hits with crystal structures. Both are legitimate experiments with different error profiles. Filtering by method terms is available precisely so you can match evidence stringency to your claim.
- Assuming interactions transfer across organisms without comment. Orthology-based inference is a standard and legitimate technique, but an inferred interaction is not the same class of fact as a directly observed one. Label which is which in any network you publish.
- Ignoring intrinsic disorder when a hub protein has an implausibly long partner list. Intrinsically disordered regions mediate one-to-many binding, and disordered proteins routinely act as network hubs [3]. A long partner list for a disordered protein is often biology, not database noise, and trimming it aggressively will discard real signal.
- Downloading without recording provenance. Both databases update continuously. An interaction list without a download date, release version, and query string cannot be reproduced. Save the curl commands alongside the results.
- Confusing interaction coverage with truth. Integration projects that mine co-fractionation mass spectrometry alongside curated archives add thousands of interactions that the curated archives lack [9]. Curated databases are systematically incomplete, especially outside well-funded model organisms. Absence from IntAct is weak evidence of absence of interaction.
- Over-trusting any single archive's completeness when comparing databases. Cross-database comparisons routinely find redundancies and gaps among IntAct, DIP, HPRD, and related resources [1]. A partner absent from one archive may be present in another, which is why multi-archive queries, as in the parasite Rab10 study [8], are the norm rather than a luxury.
One final boundary worth stating plainly. Database evidence describes what has been measured in published systems. Your specific biological system, cell type, or experimental condition may behave differently, and database-derived networks are hypotheses to test, not conclusions to ship.
Frequently Asked Questions
Is UniProt a protein interaction database?
No. UniProt is a protein sequence and function knowledgebase whose primary unit is the protein entry. It carries interaction annotations within entries, many of them imported from IntAct, but it does not store interaction records as its primary objects. When you need interaction evidence at the level of experiments and methods, IntAct is the primary source.
Does UniProt get its interaction data from IntAct?
Largely, yes. UniProt entries include interaction comment blocks and cross-references to IntAct, and integrative tools treat UniProt accessions as the key for reconciling interaction records across databases. If you see an interaction on a UniProt page and need its full evidence chain, follow the link to the interaction archive that contributed it.
Which database should I query first for a new protein?
Start with UniProt. Confirm identity, organism, and reviewed annotation, map your identifiers to accessions, and read the functional summary. Then move to IntAct for the interaction evidence. UniProt first prevents the classic error of analyzing the wrong ortholog or an unreviewed entry.
My protein has no interactions in IntAct. Does that mean it has none?
No. Interaction databases are incomplete, and coverage is thinnest for non-model organisms. Absence of a record means absence of a curated experiment, not absence of binding. Homology-based inference and additional archives such as STRING, BioPlex, and BioGrid, which studies commonly query alongside IntAct, can recover candidate partners.
What file format should I use for network analysis in Cytoscape?
Use MITAB, the tab-delimited interaction format, for a straightforward edge list, or PSI-MI XML when you need to preserve full participant and experimental detail. Download the species-specific IntAct file, filter it to your UniProt accessions, and import the resulting pairs as edges in Cytoscape.
How do I access these databases programmatically?
UniProt provides a REST API where a single curl request to rest.uniprot.org returns an entry as JSON, XML, FASTA, or TSV, plus an ID mapping service for converting gene symbols and other identifiers to accessions. IntAct provides a PSICQUIC REST service that accepts fielded queries such as protein name plus species and returns results in MITAB or PSI-MI XML. Both are free, require no authentication, and can be scripted for reproducible bulk retrieval.
Sources
- Protopia: a protein-protein interaction tool.
- Bioinformatics Tools for Proteomics Data Interpretation.
- Analyzing IDPs in Interactomes.
- Atlas - a data warehouse for integrative bioinformatics.
- 3D-interologs: an evolution database of physical protein- protein interactions across multiple genomes.
- KUPS: constructing datasets of interacting and non-interacting protein pairs with associated attributions.
- Analysis of signaling networks distributed over intracellular compartments based on protein-protein interactions.
- The pervasive effects of recombinant Fasciola gigantica Ras-related protein Rab10 on the functions of goat peripheral blood mononuclear cells.
- CyanoMapDB: a database integrating experimentally validated protein-protein interactions in cyanobacteria.