Type Allocation Code
The Type Allocation Code (TAC) is an eight-digit code that constitutes the first portion of the 15-digit International Mobile Equipment Identity (IMEI) or 16-digit IMEI Software Version (IMEISV) number, as defined in 3GPP TS 23.003, uniquely identifying the brand owner, model, and original equipment manufacturer (OEM) of a specific 3GPP-compliant mobile device, such as cellular phones, tablets, and IoT modules.[1] It ensures that each device model receives a distinct identifier to support global network interoperability, regulatory certification, and traceability for purposes including theft prevention and counterfeit detection.[2] Allocated exclusively by the GSM Association (GSMA) as the global decimal administrator for 3GPP devices, the TAC is issued to brand owners through regionally appointed reporting bodies, such as TÜV SÜD, CTIA, or TIA, following an online application process that verifies compliance with technical standards and requires payment of fees.[1] Each TAC supports up to one million unique IMEIs for a given model, after which a new code must be obtained, and it cannot be reused, shared across models, or altered without GSMA approval to maintain IMEI integrity.[2] The full IMEI structure integrates the TAC (digits 1-8) with a six-digit serial number (digits 9-14) and a check digit (digit 15), ensuring every individual device has a tamper-proof unique identifier embedded during manufacturing.[1] Historically, the TAC evolved from the six-digit Type Approval Code (TAC) used prior to April 1, 2004, when it was expanded to eight digits alongside the removal of the two-digit Final Assembly Code from the IMEI format to accommodate growing device diversity and simplify allocation.[3] Formerly known as the Type Approval Code to emphasize regulatory certification, it was renamed Type Allocation Code to reflect its broader role in device model identification beyond just approval.[4] Some device models, particularly those produced across multiple facilities or time periods, may be assigned multiple TACs—up to 21 in cases like certain iPhone variants—but no single device instance shares more than one.[4] The TAC plays a critical role in ecosystem management by enabling mobile network operators to recognize and authenticate devices, enforce blacklisting of stolen or non-compliant equipment, and support taxation or import regulations in various jurisdictions.[5] Non-compliance, such as using falsified TACs or exceeding allocated IMEI capacities, can result in legal penalties, device blocking, or revocation of certifications, underscoring the code's importance in securing the global mobile supply chain.[1]Overview
Definition and Purpose
The Type Allocation Code (TAC) is the initial eight-digit portion of the 15-digit International Mobile Equipment Identity (IMEI) or 16-digit IMEI Software Version (IMEISV), serving as a unique identifier for 3GPP-compliant mobile devices on a global scale.[6] It specifically denotes the device type, encompassing the model, manufacturer, and brand owner, thereby distinguishing it from the subsequent serial number, which identifies individual units within that type.[1] Each TAC supports up to one million unique IMEIs for a given model.[1] This structure allows the TAC to represent a category of devices rather than a single instance, facilitating standardized recognition across networks and regulatory frameworks.[6] The primary purpose of the TAC is to enable precise identification of device models and associated entities for various operational and security functions. It supports anti-theft measures indirectly, as the full IMEI (including TAC) allows network operators to blacklist individual stolen or compromised devices, while TAC enables blocking of entire non-compliant or problematic models.[7][2] Additionally, the TAC aids in verifying network compatibility, ensuring that devices meet technical standards before connecting to public land mobile networks (PLMNs).[7] In regulatory contexts, it enforces compliance by tracing devices back to their production origins, helping authorities monitor adherence to international standards for mobile equipment.[1] Furthermore, the TAC enhances traceability throughout the supply chain, from manufacturing to distribution, by assigning a fixed code to each device model that remains unchanged post-production. This feature is crucial for ecosystem integrity, as it allows stakeholders to track and verify authenticity, reducing risks associated with counterfeit or unauthorized devices.[7] Carriers and regulators leverage the TAC to block problematic models, such as those involved in fraud or non-compliance, thereby maintaining overall network security and reliability.[1]Relation to IMEI and IMEISV
The International Mobile Equipment Identity (IMEI) is a 15-digit unique identifier assigned to mobile devices to distinguish them globally. It consists of a Type Allocation Code (TAC) comprising the first 8 digits, which specifies the device model, manufacturer, and brand owner, followed by a 6-digit serial number (SNR) for individual unit identification, and a final check digit (CD) for validation using the Luhn algorithm.[8][2] The IMEI Software Version (IMEISV) extends this format to 16 digits to incorporate firmware details, retaining the same 8-digit TAC and 6-digit SNR as the IMEI, but inserting a 2-digit software version number (SVN) after the SNR to account for variations in device software, concluded by the check digit.[8] This ensures that for any given mobile equipment, the TAC and SNR components remain consistent between the IMEI and IMEISV, allowing networks to reference both for comprehensive device tracking while highlighting software-specific attributes.[8] By positioning the TAC as the leading segment, it facilitates partial IMEI matching in network operations, enabling identification of device type and origin without exposing the full serial number, which supports privacy in scenarios like access control and counterfeit detection.[2] This modular integration of the TAC underscores its foundational role in balancing unique equipment identification with selective disclosure of sensitive unit details.[1]History and Evolution
Origins and Early Development
The Type Allocation Code (TAC), initially termed the Type Approval Code, emerged as a core component of the International Mobile Equipment Identity (IMEI) during the standardization of the Global System for Mobile communications (GSM) in the early 1990s. This development was led by the European Telecommunications Standards Institute (ETSI), building on the foundational work of the Groupe Spéciale Mobile established by the Conference of European Posts and Telecommunications (CEPT) in 1982 to create a unified digital cellular network across Europe. The IMEI, including its TAC, was formally defined in ETSI's GSM Technical Specification 02.16 (version 5.0.0, November 1996), which outlined a 15-digit structure for uniquely identifying mobile equipment on GSM networks.[9][10] The early purpose of the TAC was to enable regulatory type approval of devices, ensuring they met technical standards for safe and interoperable operation on emerging GSM networks amid the rapid expansion of mobile telephony in Europe during the 1990s. By assigning codes to device types, it addressed challenges in network compatibility across operators and borders, while also supporting efforts to mitigate mobile theft—a growing issue as phone ownership surged—through device blacklisting capabilities. In this period, allocations were managed by national approval authorities to verify compliance before market entry.[9][11] The first TACs were issued around 1995 by bodies such as the British Approvals Board for Telecommunications (BABT), which acted as an initial Reporting Body under the GSM framework to approve and allocate codes for early commercial devices. Until the end of 2002, these TACs comprised 6 digits dedicated to broad categories of device types, rather than granular models, followed by a 2-digit Final Assembly Code to indicate manufacturing origin.[12] The GSM Association (GSMA), formed in 1995 to promote GSM adoption, gradually centralized oversight, formalizing its role in TAC allocation by April 2000 after the 1999 abolition of mandatory European type approval.[11][10]Transition to 8-Digit Format
In early 2003, the GSMA initiated a transition to expand the Type Allocation Code (TAC) from its original 6-digit format to 8 digits, driven by the need to enhance device identification precision amid the rapid proliferation of mobile equipment models following the EU's Radio and Telecommunications Terminal Equipment (R&TTE) Directive, which eliminated formal type approval processes. This shift eliminated the separate 2-digit Final Assembly Code (FAC), incorporating its function into the extended TAC to streamline IMEI structure and increase the available identifier space from approximately 1 million to 100 million combinations.[13] The transition period spanned from December 31, 2002, to April 1, 2004, during which newly allocated TACs were padded with "00" as the final two digits to maintain compatibility with existing IMEI analysis and tracking systems used by network operators and manufacturers. On April 1, 2004, the GSMA fully implemented the 8-digit TAC, ceasing FAC usage entirely and mandating that all future allocations utilize the complete 8-digit format for specific device models and brands rather than broad categories. Existing 6-digit TACs were retroactively converted by appending "00," ensuring seamless integration without requiring widespread updates to legacy databases or equipment.[14] This evolution, managed by the GSMA as the appointed Global Decimal Administrator, significantly improved the granularity of global device tracking by enabling unique TAC assignments to individual models from various original equipment manufacturers (OEMs), thereby reducing identification ambiguities in applications such as theft prevention, network compatibility verification, and regulatory compliance. The change supported the growing diversity of 2G and 3G devices, allowing for more accurate attribution of device types in international databases and enhancing overall IMEI integrity.Assignment and Regulation
Allocation Authorities
The GSMA serves as the primary global authority for the allocation of Type Allocation Codes (TACs), having assumed responsibility for IMEI-related allocations in April 2000 and being formally appointed as the Global Decimal Administrator in 2004 by 3GPP standards bodies.[12] The organization oversees the entire system to ensure that TACs uniquely identify device models, brands, and original equipment manufacturers (OEMs) worldwide, preventing duplication and maintaining the integrity of the IMEI ecosystem for 3GPP and 3GPP2 compliant devices.[2] Allocations are administered through a network of appointed Regional Reporting Bodies, which review applications based on the brand owner's headquarters location and regional regulatory needs.[1] Historically, prior to 2004, the British Approvals Board for Telecommunications (BABT), now part of TÜV SÜD, acted as the sole Reporting Body for TAC allocations, handling all global requests under early GSMA guidelines.[12] In 2004, the GSMA decentralized the process by introducing multiple Regional Reporting Bodies to improve efficiency and regional expertise, with BABT (now TÜV SÜD) continuing as one of them (using identifier 35).[2] Current examples include the Cellular Telecommunications and Internet Association (CTIA) for North America (identifier 01), the Telecommunications Terminal Testing & Approval Forum (TAF) for China (identifier 86), the Mobile Standards Alliance India (MSAI) for India (identifier 91), and the Telecommunications Industry Association (TIA) for multi-mode devices.[1] These bodies coordinate directly with the GSMA to allocate TACs, ensuring global uniqueness by cross-referencing against the central IMEI database and prohibiting any transfer or reuse of allocated codes across manufacturers.[15] TAC allocations require strict compliance with the GSMA's IMEI Allocation and Approval Process, outlined in document TS.06 version 28.1 (as of September 2025), which details programming rules for secure, tamper-proof IMEI implementation, including limits such as a TAC per device model (though certain models may receive multiple TACs for variants or additional production needs beyond one million units) and new allocations after reaching one million units.[15][2] This framework, supplemented by the GSMA TAC Allocation and IMEI Programming Rules (version 1.0, February 2018), mandates that all devices use globally unique IMEIs, with violations potentially leading to device blacklisting or regulatory penalties.[1] By enforcing these standards, the authorities uphold the TAC system's role in device identification, fraud prevention, and network compatibility across international borders.Application and Approval Process
Manufacturers seeking a Type Allocation Code (TAC) must first register as a brand owner through the GSMA's IMEI Database system at https://imeidb.gsma.com by completing the Manufacturers Registration Form and submitting it to a GSMA-appointed Reporting Body (RB) based on their headquarters location, such as CTIA for North America or TAF for China.[15] This registration requires providing company details, evidence of legitimacy, and confirmation of intent to produce equipment for connection to telecommunications networks.[15] Upon verification by the RB, which may involve requests for additional information, the manufacturer receives a unique Manufacturer ID and password to access the system.[15] Once registered, the application for a TAC proceeds online via the IMEI Database, where the manufacturer submits the GSMA TAC Application Form detailing the brand name, model name, marketing name, and equipment type (e.g., smartphone, modem, or IoT device). Recent updates (as of 2025) include support for satellite bands and new equipment types.[2] The form must be completed in English and include specifications ensuring the device complies with 3GPP standards and GSMA guidelines for IMEI integrity, such as secure, tamper-proof IMEI implementation.[2] Applications are reviewed by the assigned RB to confirm no overlap with existing models and to verify regional regulatory compliance, such as FCC certification in the United States through bodies like CTIA.[15][1] A TAC is allocated to a specific device model, though certain models may receive multiple TACs for variants or additional production needs beyond one million units; a new TAC is required for subsequent models or exceeding this limit.[1][2] The approval process typically results in TAC allocation within five working days of submission, provided all requirements are met and any applicable fees are paid, with the GSMA updating its database within ten working days.[15] Upon approval, the manufacturer receives a TAC certificate via email, confirming the code's assignment and enabling IMEI generation for production.[15] TACs are permanent allocations tied exclusively to the approved model and do not expire, supporting long-term device identification and anti-counterfeiting efforts by ensuring only certified equipment enters global markets.[15][2] However, allocated TACs can be challenged through the GSMA's TAC Data Challenge process if inaccuracies are identified, with challenges accepted up to five years post-allocation; misuse of TACs or IMEIs, such as falsification, may lead to legal consequences or device blacklisting.[15][2]Structure and Identification
Breakdown of TAC Components
The Type Allocation Code (TAC) is an 8-digit numeric identifier that forms the initial portion of the International Mobile Equipment Identity (IMEI), serving as a unique marker for a specific device model, brand owner, and original equipment manufacturer (OEM).[1] This code is structured without a rigid sub-formula but is allocated holistically by authorized bodies to ensure no overlaps, effectively acting as a digital fingerprint for the device's production lineage while excluding serial numbers or validation check digits.[1] The TAC breaks down into two primary components: the Reporting Body Identifier (RBI), comprising the first two digits, and the Type Identifier (or Model Identifier), encompassing the remaining six digits. The RBI designates the GSMA-appointed organization responsible for allocating the code, often correlating with regional or administrative oversight; for instance, the code "35" is assigned to TÜV SÜD BABT, which handles allocations for various global device models, while "86" corresponds to the Telecommunications Technology Association Forum (TAF) in China.[12][1] The subsequent six digits specify the precise device characteristics, including brand, OEM, and model variant, allowing up to 1,000,000 unique serial numbers per TAC to support large-scale production without duplication.[1] This division enables efficient identification of device origins and compliance with international standards, though the exact encoding within the six-digit portion remains proprietary to the allocating body to prevent reverse-engineering.[16] Prior to January 1, 2003, the TAC consisted of only six digits under the legacy format, followed by a two-digit Final Assembly Code (FAC) in the IMEI structure to denote manufacturing location. During the transition to the modern 8-digit TAC, these legacy 6-digit codes were extended by incorporating the FAC as the final two digits, ensuring continuity for existing devices without the need for widespread reallocation; in cases where no specific FAC was designated, a default of "00" was effectively appended to maintain the 8-digit length. This evolution preserved the TAC's role as a stable identifier for device type while accommodating the growing diversity of mobile equipment.[1]Integration with Device Identifiers
The Type Allocation Code (TAC) serves as the foundational prefix in constructing complete device identifiers, specifically the International Mobile Equipment Identity (IMEI) and the IMEI Software Version (IMEISV), enabling unique identification of mobile devices within global networks.[8] In the IMEI format, the 8-digit TAC is prefixed to a 6-digit serial number (SNR), which uniquely identifies individual units within the same device model, followed by a single check digit (CD) to form the full 15-digit identifier.[8][1] For the IMEISV, the structure extends to 16 digits by appending a 2-digit Software Version Number (SVN) after the TAC and SNR, without an additional check digit, allowing networks to distinguish software variants of the same hardware model.[8] The check digit in the IMEI is computed using the Luhn algorithm applied to the combined TAC and SNR digits, providing a mechanism for validating the identifier against transcription errors during manual entry or transmission.[8] This calculation involves doubling every second digit from the right (starting with the first of the TAC + SNR sequence), summing the resulting values along with the undoubled digits, and selecting a check digit that makes the total sum divisible by 10.[8] The serial number, limited to 6 digits, supports up to one million unique devices per TAC allocation, ensuring scalability for manufacturers while maintaining the TAC's role in model-specific identification.[1] In operational network systems, the TAC's integration facilitates partial queries and management actions, such as blacklisting all devices sharing a specific TAC in cases of widespread faults or security vulnerabilities affecting an entire model.[17] This capability is particularly valuable in carrier environments, where full IMEI checks may be resource-intensive, allowing efficient blocking of problematic device types without enumerating individual serial numbers.[18] The TAC plays a central role in the Equipment Identity Register (EIR), a database maintained by network operators to verify device legitimacy and enforce access controls globally.[19] Within the EIR, the TAC portion of an IMEI or IMEISV is cross-referenced against allocated codes to detect unapproved or counterfeit devices, while full identifiers enable granular tracking of stolen or lost units across black, white, and gray lists.[18][19] This integration supports standardized 3GPP procedures for equipment identity checks, ensuring seamless interoperability and security in mobile networks worldwide.[8]Databases and Lookup Services
Public TAC Databases
Public TAC databases serve as accessible resources for querying Type Allocation Codes (TACs), enabling users to identify device models and manufacturers without relying on restricted official systems. The GSMA maintains the official IMEI database, which records all allocated TACs, but access is limited for confidentiality reasons, making it unavailable to the general public.[20] Instead, several community-driven and third-party public databases fill this gap by aggregating and providing TAC information derived from official allocations. One prominent example is IMEI.info, which hosts the world's largest public TAC database containing 284,265 entries as of November 2025. This resource maps TACs to specific device models, brands, and detailed specifications, offering free lookups that reveal additional details such as warranty status, carrier information, and blacklist checks. The database is updated daily to incorporate new device data, ensuring relevance for consumer and regulatory queries.[21] Other notable public databases include the Osmocom TAC Database, a community-maintained repository that allows web-based queries and full downloads under a Creative Commons license, focusing on TAC-to-model mappings for mobile devices. Similarly, datasets on platforms like Kaggle provide downloadable TAC allocation tables for research purposes, while ImeiDB offers an offline database with over 224,576 unique TAC codes, supporting fields like manufacturer and model identification. These resources are periodically refreshed based on GSMA allocations, promoting open access that enhances transparency for consumers verifying device authenticity and for regulators monitoring compliance.[22][23][24]Usage and Access Methods
Type Allocation Codes (TACs) can be accessed and utilized through various methods tailored to individual users, developers, and organizations. Web-based lookup services provide a straightforward option for single queries, where users enter a TAC into an online form to retrieve device information such as manufacturer and model details. For instance, platforms like imei.info allow free entry of a TAC to generate reports on device specifications, often integrating data from global allocation registries. These services are particularly useful for quick verifications without requiring software installation. For more advanced applications, API integrations enable programmatic access to TAC databases, allowing developers to embed lookup functionality into mobile apps or enterprise systems. While the GSMA provides API access to TAC data only for authorized parties such as network operators and manufacturers, third-party providers like DeviceAtlas support API calls that return structured data on TACs, facilitating automated checks for device compatibility in e-commerce or support platforms. Additionally, bulk downloads of open TAC datasets are available from community-driven public repositories, such as those hosted by Osmocom or Kaggle, enabling offline analysis for research or inventory management. The GSMA also offers services like the Device Registry and TAC Data Challenge for qualified users to access structured device attribute data.[25][26] A key application of these access methods is in free tools like IMEI checkers, which leverage TACs to verify warranty status, carrier compatibility, and device authenticity for users purchasing second-hand devices. This supports secondary markets by helping buyers confirm a phone's legitimacy and specifications before transactions, reducing risks associated with counterfeit or refurbished equipment. However, limitations exist in TAC access and usage. Not all TACs are publicly available due to proprietary restrictions imposed by manufacturers or regulators, which can obscure details for certain device variants or regions. Furthermore, the accuracy of lookup results depends on the timeliness of database updates, as new TAC allocations occur regularly but may not propagate instantly across all services. Users must therefore cross-reference multiple sources for critical decisions to mitigate potential discrepancies.Practical Applications and Examples
Common TAC Examples
Type Allocation Codes (TACs) provide unique identifiers for mobile device models, illustrating how regulatory bodies assign them to ensure global compatibility and traceability. For instance, devices from major manufacturers like Apple and Samsung often share similar TAC prefixes due to allocation by the same reporting body, while Chinese OEMs may use distinct ones. These examples demonstrate practical identification in consumer devices, with TACs forming the first eight digits of an IMEI. The following table presents representative TACs for popular models, including their associated reporting body identifiers (RBIs) for context:| Manufacturer | Device Model | Example TAC | RBI (Reporting Body) | Notes |
|---|---|---|---|---|
| Apple | iPhone 14 (A2649) | 35125318 | 35 (BABT, UK) | Common for global variants, including US-certified models.[27] |
| Samsung | Galaxy S23 | 35170881 | 35 (BABT, UK) | Used for international 5G-enabled units.[28] |
| Xiaomi | 11T | 86550305 | 86 (TAF, China) | Typical for devices from Chinese brands, reflecting regional approval processes.[29] |