SteamID: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
 
(17 intermediate revisions by 12 users not shown)
Line 1: Line 1:
A '''SteamID''' is a [[wikipedia:unique identifier|unique identifier]] used to identify a Steam account. It is also used to refer to a user's Steam Community profile page.
{{lang|SteamID}}
A [[SteamID]] is a [[wikipedia:unique identifier|unique identifier]] used to identify a Steam account. It is also used to refer to a user's Steam Community profile page.


== Format ==
== Format ==
=== As Represented Textually ===
=== As Represented Textually ===
 
SteamIDs follow a fairly simple format when represented textually: "STEAM_X:Y:Z," where X, Y, and Z are integers. In select cases, "STEAM_ID_PENDING" or "UNKNOWN" are used (see the section "Types of Steam Accounts" for more details).
SteamIDs follow a fairly simple format when represented textually: "STEAM_X:Y:Z", where X, Y and Z are integers. In select cases "STEAM_ID_PENDING" or "UNKNOWN" are used (see the section 'Types of Steam Accounts' for more details).


*X represents the "Universe" the steam account belongs to.
*X represents the "Universe" the steam account belongs to.
*Y is part of the ID number for the account. Y is either 0 or 1.
*Y is part of the ID number for the account. Y is either 0 or 1.
*Z is the "account number").
*Z is the "account number").
Another commonly used representation, referred to as a "Steam3 ID," is represented as: "<tt>[</tt>''letter''<tt>:1:</tt>''W''<tt>]</tt>". Many games will use this format for player SteamIDs (e.g., <nowiki>[U:1:1234]</nowiki>) when printed from a <tt>status</tt> command for example.


=== As Represented in Computer Programs ===
=== As Represented in Computer Programs ===
 
When represented internally in computer programs, the X, Y, and Z components (see the section titled "As Represented Textually") are all packed into a 64-bit data structure.
When represented internally in computer programs the X, Y and Z components (see the section titled 'As Represented Textually') are all packed into a 64-bit data structure.


*The lowest bit represents Y.
*The lowest bit represents Y.
*The next 31 bits represents the account number.
*The next 31 bits represent the account number.
*The next 20 bits represents the instance of the account. It is usually set to 1 for user accounts.
*The next 20 bits represent the instance of the account. It is usually set to 1 for user accounts.
*The next 4 bits represents the type of account.
*The next 4 bits represent the type of account.
*The next 8 bits represents the "Universe" the steam account belongs to.
*The next 8 bits represent the "Universe" the steam account belongs to.


[[File:Steam id explanation.png|Steam64ID to Steam Community ID explanation]]
[[File:Steam id explanation.png|Steam64ID to Steam Community ID explanation]]


=== Universes Available for Steam Accounts ===
=== Universes Available for Steam Accounts ===
There are 6 universes of Steam accounts.
There are 6 universes of Steam accounts.


Line 51: Line 50:
|-
|-
|}
|}
{{note|Universes 0 to 3 are common, 4 Dev not exist in all games, 5 RC is removed out from some source files "// no such universe anymore"}}


=== Types of Steam Accounts ===
=== Types of Steam Accounts ===
 
There are ten known account types for a Steam account, of which 4 can be created today.
There are ten known account types for a Steam account, of which 4 can be persistently created today.


{| {{standard-table}}
{| {{standard-table}}
Line 64: Line 63:
! URL Path (default / custom)
! URL Path (default / custom)
! SteamID64 Identifier
! SteamID64 Identifier
! Info
|-
|-
| 0
| 0
| I
| I / i
| Invalid
| Invalid
| No  
| No  
|
|
|
|
|
Line 78: Line 79:
| profiles / id
| profiles / id
| style="font-family:monospace"| 0x0110000100000000
| style="font-family:monospace"| 0x0110000100000000
| // single user account
|-
|-
| 2
| 2
Line 85: Line 87:
|  
|  
|
|
| // multiseat (e.g. cybercafe) account
|-
|-
| 3
| 3
Line 92: Line 95:
|
|
|
|
| // game server account
|-
|-
| 4
| 4
Line 99: Line 103:
|
|
|
|
| // anonymous game server account
|-
|-
| 5
| 5
Line 106: Line 111:
|
|
|
|
| // pending
|-
|-
| 6
| 6
Line 113: Line 119:
|
|
|
|
| // content server
|-
|-
| 7
| 7
Line 120: Line 127:
| groups / gid
| groups / gid
| style="font-family:monospace"| 0x0170000000000000
| style="font-family:monospace"| 0x0170000000000000
|
|-
|-
| 8
| 8
Line 125: Line 133:
| Chat
| Chat
| Yes
| Yes
|
|
|
|
|
Line 134: Line 143:
|
|
|
|
| // Fake SteamID for local PSN account on PS3 or Live account on 360, etc.
|-
|-
| 10
| 10
Line 139: Line 149:
| AnonUser
| AnonUser
| Yes
| Yes
|
|
|
|
|
|}
|}


Users of an 'Individual' account are temporarily referred to as having a 'Pending' account which have a textual representation of "STEAM_ID_PENDING" until their account credentials are verified with Steam's authentication servers, a process usually complete by the time a server is fully connected to. Accounts of the type 'Invalid' have a textual representation of "UNKNOWN" and are used for bots and accounts which do not belong to another class.
Users of an "Individual" account are temporarily referred to as having a "Pending" account, which has a textual representation of "STEAM_ID_PENDING" until their account credentials are verified with Steam's authentication servers, a process usually complete by the time a server is fully connected to. Accounts of the type "Invalid" have a textual representation of "UNKNOWN" and are used for bots and accounts which do not belong to another class.


Multi-user chats use the 'T' character. Steam group (clan) chats use the 'c' character. Steam lobbies use Chat IDs and use the 'L' character.
Multi-user chats use the "T" character. Steam group (clan) chats use the "c" character. Steam lobbies use Chat IDs and use the "L" character.


==Steam ID as a Steam Community ID==
==Steam ID as a Steam Community ID==
Line 157: Line 168:
:<tt>http</tt> ''or'' <tt><nowiki>https</nowiki>://steamcommunity.com/</tt>''path''<tt>/[</tt>''letter''<tt>:1:</tt>''W''<tt>]</tt>
:<tt>http</tt> ''or'' <tt><nowiki>https</nowiki>://steamcommunity.com/</tt>''path''<tt>/[</tt>''letter''<tt>:1:</tt>''W''<tt>]</tt>
:The account type ''letter'' can be found in the table above. The ''path'' can be found in the same place '''after''' the slash symbol.
:The account type ''letter'' can be found in the table above. The ''path'' can be found in the same place '''after''' the slash symbol.
:Example: [http://steamcommunity.com/profiles/%5BU:1:132276035%5D http://steamcommunity.com/profiles/[U:1:132276035<nowiki>]</nowiki>]
:Example: [http://steamcommunity.com/gid/%5Bg:1:4%5D <nowiki>http://steamcommunity.com/gid/[g:1:4]</nowiki>]
:Example: [http://steamcommunity.com/gid/%5Bg:1:4%5D <nowiki>http://steamcommunity.com/gid/[g:1:4]</nowiki>]
;For 64-bit systems
;For 64-bit systems
Line 173: Line 185:
*Groups: in the "Enter chat room" link.
*Groups: in the "Enter chat room" link.


== Caveat about Cyber Café Accounts ==
== Caveat About Cyber Café Accounts ==
 
Although it would appear sensible for Valve to put all cybercafé account SteamIDs in their own universe, this has not been done. Instead, cybercafé accounts get SteamIDs in the same universe as user accounts, typically from a large pool of SteamIDs where the unique ID part lies within the range 7000000 and 8000000. There are also non-cybercafé accounts within this range and cybercafé accounts outside of this range.
Although it would appear sensible for Valve to put all cybercafé account SteamID's in their own universe, this has not been done. Instead, cybercafé accounts got SteamID's in the same universe as user accounts, typically from a large pool of SteamID's where the unique ID part lies within the range 7000000 and 8000000. There are also non cybercafé accounts within this range and cybercafé accounts outside of this range.


== SteamID Uses ==
== SteamID Uses ==
Aside from the obvious elements of identifying (uniquely) an account, its type and the domain (universe) it belongs to, SteamIDs can be used to approximately determine when the user associated with the SteamID first created that Steam account. Lower values of 'Z' in the format described above (i.e. the account number) indicate an account made further in the past to one with a higher value. For example, a SteamID like STEAM_0:0:1234 would mean that the user signed up for their Steam account a long time before a user with a SteamID such as STEAM_0:0:12341111.  
Aside from the obvious elements of identifying (uniquely) an account, its type and the domain (universe) it belongs to, SteamIDs can be used to approximately determine when the user associated with the SteamID first created that Steam account. Lower values of 'Z' in the format described above (i.e. the account number) indicate an account made further in the past to one with a higher value. For example, a SteamID like STEAM_0:0:1234 would mean that the user signed up for their Steam account a long time before a user with a SteamID such as STEAM_0:0:12341111.  


The value of X is 0 in VALVe's GoldSrc and Source Orange Box Engine games (For example, Counter Strike: Source), but newer Valve games such as Left 4 Dead, Left 4 Dead 2 and Alien Swarm have 1 as a value of X. The value of Y is either 0 or 1 and is part of the Account ID as described above. This bit used to indicate which authentication server was used by that account.
The value of X is 0 in Valve's {{gldsrc|4}} and {{Source|4}} Orange Box Engine games (such as {{cs|2}} and {{css|2}}), but newer Valve games (such as {{l4d|2}}, {{as|2}}, and {{csgo|2}}) have 1 as a value of X. The value of Y is either 0 or 1 and is part of the Account ID as described above. This bit is used to indicate which authentication server was used by that account.


== External links ==
== External links ==
* [http://www.steamid.co.uk SteamID.co.uk] - Tools to look up players, items, games, friends, groups and so much more
* [http://www.steamid.co.uk SteamID.co.uk] - Tools to look up players, items, games, friends, groups, and more.
* [http://www.legit-proof.com Legit-Proof.com] - Search engine to look up players and teams from all steam_id based games and more.
* [http://steamidfinder.com SteamIDFinder.com] - Tool to let players quickly look up their SteamID without launching a game.
* [http://steamidfinder.com SteamIDFinder.com] - Tool to let players quickly look up their SteamID without launching a game.
* [https://avi12.com/steam-id-finder Steam ID Finder] - A tool that allows looking up IDs (ID 2, 32-bit ID, 64-bit ID) and easily copy each.
* [https://steamdb.info/calculator/ SteamDB.info] - Lookup a SteamID and calculate the value of any Steam account, also shows all conversions of the SteamID.
* [http://markus.kwasniccy.eu/#getsteamid getSteamID] - A standalone tool for Windows to look up all SteamIDs found on a local computer which were used in the past by different users.
* [http://cs2report.com CS2Report.com] - SteamID finder and cheater reporter + report history.
* [http://www.steamid.com SteamID.com] - Search engine to lookup competitive Counter-Strike players by their SteamID.
 
* [http://www.vacbanned.com VACBanned.com] - Search engine to lookup the VAC status of a SteamID, and add the banned SteamIDs to a database.
* [http://www.SteamProfile.co.uk SteamProfile.co.uk] - A tool which generates links to lookup profiles on multipole API sites
[[Category:Steam]]
[[Category:Steam]]

Latest revision as of 04:30, 20 June 2025

English (en)中文 (zh)Translate (Translate)

A SteamID is a unique identifier used to identify a Steam account. It is also used to refer to a user's Steam Community profile page.

Format

As Represented Textually

SteamIDs follow a fairly simple format when represented textually: "STEAM_X:Y:Z," where X, Y, and Z are integers. In select cases, "STEAM_ID_PENDING" or "UNKNOWN" are used (see the section "Types of Steam Accounts" for more details).

  • X represents the "Universe" the steam account belongs to.
  • Y is part of the ID number for the account. Y is either 0 or 1.
  • Z is the "account number").

Another commonly used representation, referred to as a "Steam3 ID," is represented as: "[letter:1:W]". Many games will use this format for player SteamIDs (e.g., [U:1:1234]) when printed from a status command for example.

As Represented in Computer Programs

When represented internally in computer programs, the X, Y, and Z components (see the section titled "As Represented Textually") are all packed into a 64-bit data structure.

  • The lowest bit represents Y.
  • The next 31 bits represent the account number.
  • The next 20 bits represent the instance of the account. It is usually set to 1 for user accounts.
  • The next 4 bits represent the type of account.
  • The next 8 bits represent the "Universe" the steam account belongs to.

Steam64ID to Steam Community ID explanation

Universes Available for Steam Accounts

There are 6 universes of Steam accounts.

Number Type
0 Individual / Unspecified
1 Public
2 Beta
3 Internal
4 Dev
5 RC
Note.pngNote:Universes 0 to 3 are common, 4 Dev not exist in all games, 5 RC is removed out from some source files "// no such universe anymore"

Types of Steam Accounts

There are ten known account types for a Steam account, of which 4 can be created today.

Number Letter Type Can Be Used? URL Path (default / custom) SteamID64 Identifier Info
0 I / i Invalid No
1 U Individual Yes profiles / id 0x0110000100000000 // single user account
2 M Multiseat Yes // multiseat (e.g. cybercafe) account
3 G GameServer Yes // game server account
4 A AnonGameServer Yes // anonymous game server account
5 P Pending No // pending
6 C ContentServer Unknown // content server
7 g Clan Yes groups / gid 0x0170000000000000
8 T / L / c Chat Yes
9 P2P SuperSeeder No // Fake SteamID for local PSN account on PS3 or Live account on 360, etc.
10 a AnonUser Yes

Users of an "Individual" account are temporarily referred to as having a "Pending" account, which has a textual representation of "STEAM_ID_PENDING" until their account credentials are verified with Steam's authentication servers, a process usually complete by the time a server is fully connected to. Accounts of the type "Invalid" have a textual representation of "UNKNOWN" and are used for bots and accounts which do not belong to another class.

Multi-user chats use the "T" character. Steam group (clan) chats use the "c" character. Steam lobbies use Chat IDs and use the "L" character.

Steam ID as a Steam Community ID

A Steam ID can be converted to Steam Community ID for use on the Steam Community website.

Let X, Y and Z constants be defined by the SteamID: STEAM_X:Y:Z.

There are 2 methods of conversion:

For 32-bit systems
Using the formula W=Z*2+Y, a SteamID can be converted to the following link:
http or https://steamcommunity.com/path/[letter:1:W]
The account type letter can be found in the table above. The path can be found in the same place after the slash symbol.
Example: http://steamcommunity.com/profiles/[U:1:132276035]
Example: http://steamcommunity.com/gid/[g:1:4]
For 64-bit systems
Let V be SteamID64 identifier of the account type (can be found in the table above in hexadecimal format).
Using the formula W=Z*2+V+Y, a SteamID can be converted to the following link:
http or https://steamcommunity.com/path/W
As for the 32-bit method, the path can be found in the table above, again after the slash.
Example: http://steamcommunity.com/profiles/76561197960287930

Steam Community ID as a Steam ID

Using the reverse methods, a Community ID can be converted to a regular SteamID. The value of Z can be retrieved by checking parity of the number W: if it's even, Y is 0, if it's odd, Y is 1 (shortly, Y is the remainder of division of W by 2, or the result of binary AND operation with number 1).

The SteamID64 (64-bit SteamID) of Steam Community members can be found in several places:

  • Players:
    • In profile->steamID64 element of profile XML schema (can be opened by appending ?xml=1 to profile URL).
    • In the "Add to your friends list" link (not recommended to be used in applications that login with username and password).
  • Groups: in the "Enter chat room" link.

Caveat About Cyber Café Accounts

Although it would appear sensible for Valve to put all cybercafé account SteamIDs in their own universe, this has not been done. Instead, cybercafé accounts get SteamIDs in the same universe as user accounts, typically from a large pool of SteamIDs where the unique ID part lies within the range 7000000 and 8000000. There are also non-cybercafé accounts within this range and cybercafé accounts outside of this range.

SteamID Uses

Aside from the obvious elements of identifying (uniquely) an account, its type and the domain (universe) it belongs to, SteamIDs can be used to approximately determine when the user associated with the SteamID first created that Steam account. Lower values of 'Z' in the format described above (i.e. the account number) indicate an account made further in the past to one with a higher value. For example, a SteamID like STEAM_0:0:1234 would mean that the user signed up for their Steam account a long time before a user with a SteamID such as STEAM_0:0:12341111.

The value of X is 0 in Valve's GoldSrc GoldSrc and Source Source Orange Box Engine games (such as Counter-Strike Counter-Strike and Counter-Strike: Source Counter-Strike: Source), but newer Valve games (such as Left 4 Dead Left 4 Dead, Alien Swarm Alien Swarm, and Counter-Strike: Global Offensive Counter-Strike: Global Offensive) have 1 as a value of X. The value of Y is either 0 or 1 and is part of the Account ID as described above. This bit is used to indicate which authentication server was used by that account.

External links

  • SteamID.co.uk - Tools to look up players, items, games, friends, groups, and more.
  • SteamIDFinder.com - Tool to let players quickly look up their SteamID without launching a game.
  • SteamDB.info - Lookup a SteamID and calculate the value of any Steam account, also shows all conversions of the SteamID.
  • CS2Report.com - SteamID finder and cheater reporter + report history.