This report offers a detailed look at Luxembourg’s research output from 2015 to 2025. Using data from the OpenAlex database, it examines trends in scientific publications, key areas of research, international partnerships, and the impact of this research. The analysis distinguishes between work led by researchers in Luxembourg and projects where they contributed as international collaborators. The findings show that Luxembourg has a balanced and dynamic research landscape. The country demonstrates strong leadership in the Physical and Social Sciences while also engaging in extensive collaboration in the Life and Health Sciences. These international partnerships, especially with European countries like Germany and France, are crucial and often result in publications with a higher citation impact.
Key areas of specialization include Artificial Intelligence, Aerospace Engineering, and Political Science, highlighting the nation’s diverse research strengths. The report concludes by emphasizing the need for continuous monitoring of these trends to support strategic planning and investment in research. A future national publication registry could further enhance this type of analysis, providing a complete picture of Luxembourg’s contributions to global science and innovation.
The source code for this analysis can be found here.
2 Introduction and Methodology
2.1 Data Source and Scope
This analysis uses data from OpenAlex, a comprehensive, open-access platform for scholarly metadata. It serves as a free alternative to paid academic databases. OpenAlex provides structured information about publications, authors, institutional affiliations, and research collaborations across all academic disciplines, making it an ideal resource for analyzing a country’s research landscape.
2.2 Analytical Framework
Our methodology focuses on identifying scholarly works with affiliations to Luxembourg institutions over the past decade. The analysis makes an important distinction based on the first author’s status:
Luxembourg-led research: Publications where the first author is affiliated with an institution in Luxembourg.
Collaborative research: Publications where institutions in Luxembourg participate as co-authors but not as lead authors.
This classification helps us understand both Luxembourg’s research leadership and its integration into international research networks.
2.3 Data Quality Considerations
OpenAlex gathers data from multiple sources, which makes its coverage comprehensive. However, the data’s quality depends on the accuracy of the original sources and on OpenAlex’s ability to correctly identify publications affiliated with Luxembourg.
It should also be noted that since 2025 is the current year, the data for 2025 is incomplete. This might also be true for 2024 data. OpenAlex needs time to discover, process, and index publications. These points should be considered when interpreting the findings of this report.
3 Publication Portfolio Analysis
3.1 Document Types and Coverage
The initial dataset includes all document types recorded in OpenAlex for scholarly works affiliated with Luxembourg. The following table shows the distribution of work types and the presence of Digital Object Identifiers (DOI). A DOI is a unique, persistent identifier for digital publications that provides a permanent web address to the document, even if the publisher’s URL changes.
Table 1: Distribution of types of work and missingness of DOI
Since most of the publications in the dataset are journal articles, and because they are crucial for academic communication, this analysis focuses only on peer-reviewed articles, whether or not they have a DOI.
3.2 Research Leadership vs. Collaboration
From 2015 to 2023, research output continuously increased, regardless of the first author’s affiliation, as shown in the graph below. The year 2024 marked the first decrease in output, but it’s too early to know if this trend will continue into 2025 and beyond. As mentioned in the introduction, it is likely that not all scholarly works from 2024, and especially from 2025, have been indexed by OpenAlex yet.
raw_lu_data =transpose(lu_first_authors_ojs)lu_data = raw_lu_data.map(d => ({publication_year:+d.publication_year,// Convert to numberis_lu_first_author: d.is_lu_first_author==="TRUE"|| d.is_lu_first_author===true,author_type: (d.is_lu_first_author==="TRUE"|| d.is_lu_first_author===true) ?"LU first author":"Non-LU first author",total:+d.total}))// Create color mappinglu_colors =newMap([ ["LU first author","#003399"], ["Non-LU first author","#FF6B35"]])// Get unique years for x-axisunique_years_pub = [...newSet(lu_data.map(d => d.publication_year))].sort()// Create the plotPlot.plot({width:800,height:500,marginLeft:60,marginBottom:60,x: {label:"Publication Year",domain: d3.extent(lu_data, d => d.publication_year),tickFormat:"d",ticks: unique_years_pub },y: {label:"Number of Publications",grid:true },color: {domain: ["LU first author","Non-LU first author"],range: ["#003399","#FF6B35"],legend:true },marks: [// Lines for each author type Plot.line(lu_data, {x:"publication_year",y:"total",stroke:"author_type",strokeWidth:2.5,z:"author_type" }),// Points for each author type Plot.dot(lu_data, {x:"publication_year",y:"total",fill:"author_type",r:4,stroke:"white",strokeWidth:1 }),// Vertical line rule with tooltip Plot.ruleX(lu_data, Plot.pointerX({x:"publication_year",stroke:"gray",strokeWidth:1.5,strokeDasharray:"3,3",opacity:0.8 })),// Enhanced tooltip showing both values at each year Plot.tip(lu_data, Plot.pointerX({x:"publication_year",title: (d, i, data) => {// Get the year from the hovered pointconst year = d.publication_year;// Find all data points for this yearconst yearData = data.filter(point => point.publication_year=== year);// Create tooltip textconst luFirst = yearData.find(p => p.author_type==="LU first author")?.total||0;const nonLuFirst = yearData.find(p => p.author_type==="Non-LU first author")?.total||0;return`Year: ${year}\n${'-'.repeat(25)}\nLU first author: ${luFirst}\nNon-LU first author: ${nonLuFirst}`; },fontSize:12 })) ],title:"Luxembourg Research Publications by First Author Affiliation"})
4 Research Domain Landscape
4.1 Major Scientific Domains
Overall, most works are led by researchers affiliated with Luxembourg institutions, but this pattern changes depending on the research domain. The interactive graph below shows publication numbers for each domain over time. You can interact with it by selecting different domains or first author affiliations.
raw_data =transpose(primary_domain_lu_ojs)// Convert data types to ensure Observable Plot can use themdata = raw_data.map(d => ({publication_year:+d.publication_year,// Convert to numberprimary_domain_name: d.primary_domain_name,total:+d.total,// Convert to numberis_lu_first_author: d.is_lu_first_author==="TRUE"|| d.is_lu_first_author===true// Convert to boolean}))// Create color mappingdomain_colors =newMap([ ["Health Sciences","#FF6B35"], ["Life Sciences","#003399"], ["MISSING-DOMAIN","#228B22"], ["Physical Sciences","#FF1493"], ["Social Sciences","#800080"]])// Get unique values for controlsunique_domains = [...newSet(data.map(d => d.primary_domain_name))].sort()html`<div style="margin-top: 20px; padding: 15px;"> <h4 style="margin-top: 0; margin-bottom: 15px;">Inputs:</h4> <label style="font-size: 16px; color: #333;">Select year range:</label></div>`
Plot.plot({width:800,height:500,marginLeft:60,marginBottom:60,x: {label:"Publication Year",domain: [Math.min(...filtered_data.map(d => d.publication_year)),Math.max(...filtered_data.map(d => d.publication_year))],tickFormat:"d",ticks: d3.range(Math.min(...filtered_data.map(d => d.publication_year)),Math.max(...filtered_data.map(d => d.publication_year)) +1 ) // Force integer ticks only },y: {label:"Number of Publications",grid:true },color: {domain: unique_domains,range: unique_domains.map(d => domain_colors.get(d)),legend:false },marks: [// Your existing marks here...// Solid lines for LU-affiliated authors Plot.line(filtered_data.filter(d => d.is_lu_first_author===true), {x:"publication_year",y:"total",stroke:"primary_domain_name",strokeWidth:2.5,z: d =>`${d.primary_domain_name}-LU` }),// Dashed lines for non-LU-affiliated authors Plot.line(filtered_data.filter(d => d.is_lu_first_author===false), {x:"publication_year",y:"total",stroke:"primary_domain_name",strokeWidth:2.5,strokeDasharray:"8,8",z: d =>`${d.primary_domain_name}-NonLU` }),// Points with different symbols Plot.dot(filtered_data, {x:"publication_year",y:"total",fill:"primary_domain_name",symbol: d => d.is_lu_first_author?"circle":"triangle",r:5,stroke:"white",strokeWidth:1 }),// Vertical line rule (only when "Both" is selected)...(selected_author_type ==="Both"? [ Plot.ruleX(filtered_data, Plot.pointerX({x:"publication_year",stroke:"gray",strokeWidth:1,strokeDasharray:"3,3",opacity:0.7 })) ] : []),// Enhanced tooltipsPlot.tip(filtered_data, selected_author_type ==="Both"? Plot.pointerX({x:"publication_year",title: (d, i, data) => {// Group all data points by year for this x-positionconst year = d.publication_year;const allPointsAtYear = data.filter(point => point.publication_year=== year);// Create title showing all domains and their values at this yearconst yearTitle =`Year: ${year}\n${'-'.repeat(20)}\n`;const entries = allPointsAtYear.map(point =>`${point.primary_domain_name}: ${point.total} (${point.is_lu_first_author?'LU':'Non-LU'})` ).join('\n');return yearTitle + entries; },fontSize:12 }) : Plot.pointer({x:"publication_year",y:"total",fill:"primary_domain_name",title: d =>`${d.primary_domain_name}\n${d.publication_year}\nPublications: ${d.total}\nLU First Author: ${d.is_lu_first_author?"Yes":"No"}` })) ],title:"Luxembourg Research Publications by Domain Over Time"})
In the Life and Health Sciences, researchers from Luxembourg are more often collaborators. In contrast, they are more frequently lead authors in the Physical and Social Sciences.
4.2 Research Specialization Areas
Besides broad domains, OpenAlex also classifies research into more specific subfields. OpenAlex has over 200 distinct subfields. The graph below shows the top ten subfields for publications led by Luxembourg-affiliated authors and the top ten for those led by non-Luxembourg authors. This selection results in a total of 13 unique subfields.
raw_data_subfield =transpose(primary_subfield_lu_ojs)// Convert data types to ensure Observable Plot can use themdata_subfield = raw_data_subfield.map(d => ({publication_year:+d.publication_year,// Convert to numberprimary_subfield_name: d.primary_subfield_name,total:+d.total,// Convert to numberis_lu_first_author: d.is_lu_first_author==="TRUE"|| d.is_lu_first_author===true// Convert to boolean}))// Create color mapping for your actual subfieldssubfield_colors =newMap([ ["Aerospace Engineering","#FF6B35"],// Orange-red ["Artificial Intelligence","#003399"],// Deep blue ["Computer Networks and Communications","#228B22"],// Forest green ["Computer Vision and Pattern Recognition","#FF1493"],// Deep pink ["Economics and Econometrics","#800080"],// Purple ["Electrical and Electronic Engineering","#FFD700"],// Gold ["Information Systems","#DE2910"],// Red ["Materials Chemistry","#C8102E"],// Crimson ["Molecular Biology","#009246"],// Green ["Neurology","#AA151B"],// Dark red ["Political Science and International Relations","#FF7F00"],// Orange ["Pulmonary and Respiratory Medicine","#4B0082"],// Indigo ["Sociology and Political Science","#8B4513"] // Saddle brown])// Get unique values for controlsunique_subfields = [...newSet(data_subfield.map(d => d.primary_subfield_name))].sort()html`<div style="margin-top: 20px; padding: 15px;"> <h4 style="margin-top: 0; margin-bottom: 15px;">Inputs:</h4> <label style="font-size: 16px; color: #333;">Select year range:</label></div>`
Plot.plot({width:800,height:500,marginLeft:60,marginBottom:60,x: {label:"Publication Year",domain: [Math.min(...filtered_data_subfield.map(d => d.publication_year)),Math.max(...filtered_data_subfield.map(d => d.publication_year))],tickFormat:"d",ticks: d3.range(Math.min(...filtered_data_subfield.map(d => d.publication_year)),Math.max(...filtered_data_subfield.map(d => d.publication_year)) +1 ) },y: {label:"Number of Publications",grid:true },color: {domain: unique_subfields,range: unique_subfields.map(d => subfield_colors.get(d) ||'#888'),legend:false },marks: [// Solid lines for LU-affiliated authors Plot.line(filtered_data_subfield.filter(d => d.is_lu_first_author===true), {x:"publication_year",y:"total",stroke:"primary_subfield_name",strokeWidth:2.5,z: d =>`${d.primary_subfield_name}-LU` }),// Dashed lines for non-LU-affiliated authors Plot.line(filtered_data_subfield.filter(d => d.is_lu_first_author===false), {x:"publication_year",y:"total",stroke:"primary_subfield_name",strokeWidth:2.5,strokeDasharray:"8,8",z: d =>`${d.primary_subfield_name}-NonLU` }),// Points with different symbols Plot.dot(filtered_data_subfield, {x:"publication_year",y:"total",fill:"primary_subfield_name",symbol: d => d.is_lu_first_author?"circle":"triangle",r:5,stroke:"white",strokeWidth:1 }),// Vertical line rule (only when "Both" is selected)...(selected_author_type_subfield ==="Both"? [ Plot.ruleX(filtered_data_subfield, Plot.pointerX({x:"publication_year",stroke:"gray",strokeWidth:1,strokeDasharray:"3,3",opacity:0.7 })) ] : []),// Enhanced tooltips Plot.tip(filtered_data_subfield, selected_author_type_subfield ==="Both"? Plot.pointerX({x:"publication_year",title: (d, i, data) => {// Group all data points by year for this x-positionconst year = d.publication_year;const allPointsAtYear = data.filter(point => point.publication_year=== year);// Create title showing all subfields and their values at this yearconst yearTitle =`Year: ${year}\n${'-'.repeat(20)}\n`;const entries = allPointsAtYear.map(point =>`${point.primary_subfield_name}: ${point.total} (${point.is_lu_first_author?'LU':'Non-LU'})` ).join('\n');return yearTitle + entries; },fontSize:12 }) : Plot.pointer({x:"publication_year",y:"total",fill:"primary_subfield_name",title: d =>`${d.primary_subfield_name}\n${d.publication_year}\nPublications: ${d.total}\nLU First Author: ${d.is_lu_first_author?"Yes":"No"}` }) ) ],title:"Luxembourg Research Publications by Subfield Over Time"})
The subfields with the most publications are Artificial Intelligence, Aerospace Engineering, and Political Science and International Relations, particularly in the last five years.
Most of the other subfields appear to be stable. However, Economics and Econometrics, as well as Information Systems, show a decreasing trend over the last five years, but only for publications with lead authors affiliated with Luxembourg institutions.
5 Global Research Partnerships
5.1 International Collaboration Network
Luxembourg’s research ecosystem involves extensive international collaboration. This section examines the geographical distribution of research partnerships, revealing the countries and regions that collaborate most frequently with institutions in Luxembourg. The interactive visualization below explores Luxembourg’s collaboration patterns. It’s important to note that the graph counts the total number of author-country affiliations, not unique publications. This means that a single paper with authors from several countries will be counted for each of those countries. For example, if one publication has ten authors from ten different countries, it would be counted ten times across those countries, reflecting the collaborative nature of international research partnerships.
raw_country_data =transpose(country_authors_unique_ojs)// Convert data types to ensure Observable Plot can use themcountry_data = raw_country_data.map(d => ({publication_year:+d.publication_year,is_lu_first_author: d.is_lu_first_author==="TRUE"|| d.is_lu_first_author===true,country_groups: d.country_groups,n:+d.n}))// Create color mapping for countriescountry_colors =newMap([ ["European Union","#003399"], ["Others","#FF1493"], ["Luxembourg","#FF6B35"], ["France","#800080"], ["USA","#228B22"], ["Belgium","#FFD700"], ["Germany","#000000"], ["China","#DE2910"], ["Great Britain","#C8102E"], ["Italy","#009246"], ["Spain","#AA151B"], ["Switzerland","#FF0000"], ["Netherlands","#FF7F00"]])// Get unique values for controlsunique_years = [...newSet(country_data.map(d => d.publication_year))].sort()unique_countries = [...newSet(country_data.map(d => d.country_groups))].sort()html`<div style="margin-top: 20px; padding: 15px;"> <h4 style="margin-top: 0; margin-bottom: 15px;">Inputs:</h4> <label style="font-size: 16px; color: #333;">Select year range:</label></div>`
Plot.plot({width:900,height:600,marginLeft:80,marginBottom:80,marginRight:40,x: {label:null,axis:null,paddingOuter:0.2 },y: {label:"Total Affiliations",grid:true },fx: {label:"Publication Year",tickFormat:"d" },fy: {label:null,tickFormat: d => d ?"LU First Author":"LU Not First Author" },color: {domain: unique_countries,range: unique_countries.map(d => country_colors.get(d)),legend:false },facet: {data: filtered_country_data,x:"publication_year",y:"is_lu_first_author",marginTop:40 },marks: [ Plot.barY(filtered_country_data, Plot.groupX( {y:"sum"}, {x:"country_groups",y:"n",fill:"country_groups",stroke:"black",strokeWidth:0.5,tip:true,title: d =>`${d.country_groups}\n${d.publication_year}\nPublications: ${d.n}\nLU First Author: ${d.is_lu_first_author?"Yes":"No"}` } )), Plot.frame({stroke:"black",strokeWidth:1}) ],style: {fontSize:"12px" },title:"Author Affiliations by Country/Region Over Time (Faceted by Luxembourg First Author Status)"})
The collaboration patterns show strong partnerships with European Union countries, especially Germany and France. The USA is fourth, followed by Belgium, with relatively modest contributions from other regions like China and Switzerland, regardless of first author affiliation.
6 Research Impact Analysis
6.1 Citation Patterns and Academic Influence
To assess research impact, it is necessary to understand citation patterns across different domains, publication years, and authorship types. The following table presents comprehensive citation statistics:
Table 2: Citation statistics
6.2 Understanding Citation Dynamics
Citation patterns consistently follow power-law distributions across all disciplines, publication years, and authorship types. This universal pattern reflects the nature of scientific communication, where most articles receive relatively few citations while a small percentage achieve high impact.
The analysis reveals several key insights into Luxembourg’s research impact patterns. The accumulation of citations clearly depends on time. Newer publications have naturally received fewer citations, while older ones have had more time to gather them. Different scientific domains have different citation cultures and timelines, which affects overall impact measurements. Researchers in Luxembourg benefit significantly from international partnerships, with higher citation rates for collaborative works where institutions from Luxembourg serve as co-authors rather than lead authors. This pattern suggests that international collaborations often address research questions with broader global relevance and appeal to wider scientific audiences, potentially due to the combined expertise and diverse perspectives from multi-national teams. Additionally, lead institutions in these collaborations may have greater resources for sharing and promoting research.
As an example, let’s take a closer look at the Health Sciences domain. For publications with first authors affiliated with Luxembourg institutions in 2024, 75% of articles received two or fewer citations, while only 1% achieved 16 or more. However, for works published in 2019 that have had more time to accumulate citations, publications by lead authors affiliated with Luxembourg institutions showed 75% of articles receiving 18 or fewer citations and 1% achieving 147 or more.
As for the difference between collaborative and first authorship roles, the peak impact metrics in the Health Sciences domain clearly illustrate this distinction. The highest-cited article with a Luxembourg lead author achieved 482 citations, compared to 3331 citations for the top collaborative work led by a non-Luxembourg author.
7 Scientific Communication Patterns
7.1 Language Usage in Research Publications
As expected, English dominates scientific communication across all research domains:
Table 3: Distribution of languages used to write articles
This language pattern reflects the international nature of scientific communication and Luxembourg’s integration into global research networks. The dominance of English makes international collaboration easier and helps maximize the visibility and accessibility of the research.
8 Conclusions and Future Directions
This analysis of Luxembourg’s research landscape shows several key features of the country’s position in the global scientific community. Luxembourg has active research programs across multiple scientific domains, with particular strengths in the physical and social sciences, demonstrating a balanced research portfolio. The country’s research ecosystem shows extensive international collaboration, particularly with European partners. This reflects strategic Luxembourg’s position within the European research infrastructure and its commitment to cross-border scientific cooperation.
To effectively monitor Luxembourg’s research performance and strategic position, several key performance indicators should be tracked annually. These include publication volume trends by domain and institutional affiliation, international collaboration rates and the geographic distribution of partnerships, citation impact metrics over different time horizons, the proportion of Luxembourg-led versus collaborative research projects, language diversity in publications, and the emergence of new or declining areas of research specialization. Additionally, monitoring the ratio of publications with first authors from Luxembourg versus those where Luxembourg institutions serve as collaborative partners would provide insights into the country’s research leadership capacity versus its integration into international networks.
However, it is equally important to expand this monitoring framework beyond traditional academic articles to include datasets produced, software developed, patents filed, policy reports, and other forms of research communication and knowledge transfer. These outputs are increasingly critical components of modern research impact and innovation. Regular assessment of these comprehensive metrics would enable evidence-based research policy decisions and help identify opportunities for strategic investment in emerging or underperforming research areas.
Once the national publication registry is established, this analysis could become even more comprehensive. Integration with other sources like OpenAlex would be particularly valuable, allowing for international comparisons and fuller coverage of Luxembourg’s research outputs across all communication channels and impact pathways.