Home/Insights/Data Engineering

How I Find Viral X Posts Without APIs!

By Ani BjörkströmPublished 17 December 2025Reviewed 20 September 20269 min video + articleData Engineering

How I Find Viral X Posts Without APIs!
▶ Watch the full 9-minute tutorial · free on YouTube

AUTOMATION

How Do You Find Viral X Posts Without Paying for APIs?

In short: An n8n workflow plus Google News RSS surfaces the most-viewed X posts for any keyword, with no X API access and no paid tools.

Key takeaways

  • An n8n workflow plus Google News RSS surfaces the most-viewed X posts for any keyword, with no X API access and no paid tools.
  • A simple form takes three inputs, keyword, days back, and top-N results, and the workflow scores, ranks, and writes the posts to a Google Sheet.
  • Using the X post URL as the matching column prevents duplicate rows, since every X post has a unique URL.

Finding what is trending on X normally means paid API access or third-party subscriptions. Ani Björkström demonstrated a workflow that skips both: n8n orchestrates a Google News RSS feed restricted to X, scores each post, and delivers a ranked list in a Google Sheet, built entirely on free components.

How does the workflow start?

With an n8n form trigger. The form's URL is auto-populated, authentication is set to none, and you define three fields: a text field for the search keyword, a "days back" field (7 for the last week, 14 for two weeks), and a "top N results" field that caps the output, for example the top 15 posts by views. Executing the trigger opens the form, where you might enter "AI" as the keyword to pull AI posts from X.

What do the code and RSS nodes actually do?

They build and process the feed, and you do not have to write the code yourself: an LLM such as ChatGPT, Claude, or Gemini can generate it, or you can get the complete workflow free by commenting "N8N" on the video. The first code node stores the form inputs as variables, restricts the site to X/Twitter, and assembles the Google News RSS URL, with English as a default parameter. The nodes then run in sequence:

NodePurpose
Form triggerCollects keyword, days back, and top-N results
CodeSaves inputs as variables and builds the RSS URL limited to X
RSSCalls the Google News feed, no adjustments needed
Code (JavaScript)Assigns each post a trend score; highest score means most views
LimitKeeps only the top N defined in the form
CodeAssigns rank 1, 2, 3 by descending score
Google SheetsAppends or updates rows with the ranked results

How do results land in Google Sheets?

Through the append-or-update-row node, after connecting n8n to your Google account with credentials. You create a Google Sheet whose columns match the output fields, rank, title, X URL, publish date, and source domain, then select the document and correct sheet tab, and drag and drop each field to map it. The X URL serves as the identifying column: if a post already exists in the sheet it is not entered again, otherwise a new row is created. In the demo, the sheet held ten ranked rows, and the top post had 31.5K views versus 18,000 for a lower-scored one.

What can you use the ranked list for?

Two things: market intelligence and growth. Set the keyword to your industry, finance, marketing, AI, or any niche, and you instantly see the most hyped topics in it. To grow your own X account, comment on or share the top posts, or create a similar post of your own, because you already know that the topic performed.

FAQ

Do I need X API access or any subscriptions?

No. The workflow uses a Google News RSS feed filtered to X, orchestrated by n8n, and every component involved is free.

Do I have to write the JavaScript myself?

No. You can ask ChatGPT, Claude, Gemini, or another LLM to write it, or comment "N8N" on the video to receive the full workflow, code included, for free.

How are duplicates avoided in the sheet?

The Google Sheets node matches on the X URL column. Since each X post has a unique URL, existing posts are skipped and only new ones create rows.

Full transcript of the video (1,513 words, 11 sections)

0:22 What if I told you that you can find the most viral posts on X completely for free with zero paid tools? In this video, I'll show you the exact workflow I use to pull the most hyped X posts using NAN and Google News RSS. No APIs, no subscriptions and I'll give you the workflow for free. Just comment N8 below. Let's get started. So the first note in our NAT workflow is form trigger. If you go to plus button and from here if you try to search for form. So you will get N8 form and from here you will choose trigger and on new NAN form event. And here you can see that URL is already populated. So you don't need to update that one. Authentication is none and you can leave it as it is.

1:10 Form title is something that you can define on your own. The same goes for description. After that we will add some elements and those elements are basically fields that we want to get information about. If I come out of this one and open the actual firm trigger, you can see that the first element is search keyword and then the type is text. Next, we will create a new element days back and you will enter here 7 days for example if you want to get most hyped post during the last week. And last but not least, we will also define top end results. And here we want to understand how many results we want to get in our form.

1:57 So you can see if we execute this step the form will open. And here we will define the keyword it can be for example IE. If you like to get posts about IE from X. Then if you would like to get most hyped posts during last two weeks then you will enter 14 in here. And when it comes to top end results, you will define how many results you want to get. For example, if you choose top 15, it mean that you will get top 15 posts that got most views and the first one will be the one that got most views and the second one will come second and so on. Next, we will write a code. You don't need to write a code if you don't like. If you just comment anything, I will send you this workflow for free and the code will be included in the workflow.

2:46 Alternatively, you can just ask Chpt or another LLM for example cloud or Gemini or Grog or Deepseek to create this code for you. But what we are doing in here is we are basically saving the keywords that we get from the previous step in a variables. For example, keywords will be saved in a variable called keyword. Days back will be saved in a variable called days back. Then we will even specify that site information should be X or Twitter because we only want to get information from X. Then we will basically define the RS flow from Google that we will use to get this information. Now in the right side you can see the URL that we will use to get information and in this URL you can see keyword that is IIE and then it inserted also a site that is X or Twitter.

3:37 after when it also inserted pause for the last 14 days. And then there are some default parameters that we didn't update saying that it needs to be in English. In the next step, we will call this feed using RSS node without any adjustments. We will use JavaScript code. And here again, you can decide you can either write JavaScript or Python or you don't even need to write anything. You can either get this workflow from me and the code will be included or you can just ask CHP to write this code for you. By this code, we are giving score to every single post. For example, you can see trend score 1,026. Underneath that comes 1,025 and it goes down.

4:22 And the posts that have the highest trend score are the ones that have most views in X. So next we have limit top n where we will be limiting the top results that we defined in the beginning. You can see that right now we are getting the information from top end field that we entered in the beginning of this workflow. After that we have another code node and if we double click on this you can see that we are creating ranks here and the post that have the highest score will have rank one and then the one that comes after that will have rank two and so on. And then after that we have another node that is called append or update row in sheets. So here we get the results that we got from Google's RSS feed and we are entering those results into Google sheet.

5:14 And in order this to work you need to first create credentials and connect N with Google account. Once you do that, you will need to go to Google Drive, create a Google sheet, and here you will basically define the fields that you want to get from the output. In here, you can see that those are the fields that we have, rank, title, URL, pub, date, and source domain. You can define which of those you want to save in your Google sheet. And once you know which ones you want to save, you will create those as tabs in the Google sheet. So if I go to my Google sheet you can see that I saved rank title X URL and source domain and after that you can choose the document.

6:00 So this is the same Google sheet document that we created in our Google drive and then you will define which sheet of this document should be used. You can see that we have different sheets. So our tabs are on sheet one. That's why we can use sheet one. But of course you can always create more sheets here. So that is why it is important to map with the correct sheet. And underneath that you will decide which column should be used to identify if this information already exists in Google sheet or not. And if the information already exists in Google sheet it will not be entered again. If it doesn't exist then the new row will be created. So for that reason I'm using X URL because every single post in X has a separate URL.

6:45 Once that is done, then you will just drag and drop fields from left to right. For example, for X URL, you will just drag and drop the value for X URL into value of X URL in here. And then the same thing for all the other values as well. And you can see that this is just a field that you can drag and drop. And once that is done, all the information will be saved in a Google sheet. If I close this one and go to Google sheet, you can see that in here we have 10 rows and this is because we define that we want to save top 10 expos. Then you can see that we have the score and score is going down. So the score that is highest has most views. Then we have the title, this is the title of the X posts and we even have the URL that is taking us to X.

7:34 And then we have the publish date as well. If you click on this link, then X will open and we can see the post from X. If you go down, you can see that in here we have 31,.5 views. And if we, for example, take the next post, the one that had lower score. You can see that we have another post that has 18,000 views. You might be needing this information first to know what are the most hyped topics in your industry. You can in the keywords define your industry. It can be finance, marketing or whatever it is that you are interested in. Also, this is a very good way to grow your ex account. You can write a comment or you can just share this post or alternatively you can create another post like this one because right now you know that this post was very hyped.

8:23 So that's it. Now you know how to find the most hyped posts on X without paying for any tools. This entire workflow runs on free components and you can use it for AI, finance, marketing, any niche you want. If you want this exact N8N workflow, comment N8N below and I'll send it to you for free. If this video helped you, hit like, subscribe for more automation content, and I'll see you in the next

Want this working inside your finance team?

Ani Björkström

Ani Björkström — founder of QvantX Sweden AB, a Stockholm consultancy building AI solutions for banks, asset managers and finance teams. Anthropic partner. Every article starts from a real client build, minus the confidential parts. LinkedIn →