Yes, it can get complicated when you're translating the word "Russian" into Russian.
Ekaterina Lobanova Find out why the distinction is so important to Russians.
If you study the Russian language you surely will face a lot of difficulties (in between enjoying its beauty, of course). And, like with any other language, there always are lexical nuances quite hard to understand for a non-native speaker.
One of such nuances is that all of a sudden, there are two different translations of the English word "Russian" in Russian - русский (russky) and россиянин (rossiyanin) which have slightly different meanings. What's the difference?
Russky (plural: russkie) is an ethnic Russian, anyone who belongs to the Russian ethnos, an East Slavic ethnic group (the other East Slavs are Ukrainians and Belarussians). Ethnical Russians comprise the majority of Russia's population - about 80 percent.
Rossiaynin (plural: rossiyane, adjective: rossiysky) is any citizen of Russia.
So, a rossiyanin can be non-Russian ethnically, if they, for instance, are Tatar, Yakut or Dagestani, as there are more than 190 ethnicities living in Russia. Hence, they are not russkie in this case but they surely are rossiyane as long as they enjoy citizenship. It's pretty close to being British and being English - quite close, but a more fitting comparison would be something along the lines of being Serbian and being a Serb: one is your passport, the other, your ethnos. Despite that, the people of Serbia hardly ever use "Serbians" in either Serbian or English, while Russians observe a distinct difference between the two categories when speaking their native Russian.
New word for a new country
Given the fact that the rest of the world doesn't give a hoot about all these peculiarities, and just adds "ethnic" if they want to specify the nationality of a Russian citizen, a sensible question emerges: why is the distinction prevalent in the Russian language?
Rossiaynin as a word came into use only in the 1990s, after the Soviet Union fell apart. Back in the Soviet era, the adjective 'Soviet' (sovetsky) was applied to all the nations of the USSR united by its government. So, ethnically you could be Russian, Ukrainian, Georgian etc. but generally all the citizens were Soviet.
The thing was, there was no Soviet Union anymore, but Russia still remained multinational, so the government felt it would be appropriate to find a word to embrace all the nations (russky seemed too narrow and ethnical).
"The idea of rossiysky is not to replace the historical names of Russia's nationalities - no one wants that. But this word can become, and already is becoming, an appropriate term for a civic nation," political scientist Viktor Pirozhenko told Izvestiya.
Basically, rossiyanin/rossiysky is still quite an official term you use when talking about official things. Here is a hint: if you want to say "Russian" meaning "Russia's" as in "belonging to the state of Russia", go with "rossiysky": government, citizenship, political system etc. In most other cases, russky suits better.