Huashu Design
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
An n8n workflow that reads your site’s traffic from Umami every week. An AI model on OpenRouter summarizes the figures and compares the top pages with last week’s, and both notes are saved as a row in a Baserow table.
Umami weekly traffic summarized by AI and saved to Baserow is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.
Weekly schedule
It starts by itself every Thursday at 00:00, or when you press Test workflow, and there is no form:
A new Baserow row with the date, a summary of the week’s figures, a comparison of the top pages and the site
What you need before you start.
Web analytics
Gives the traffic figures and the top pages of one website.
NeedsThe API address, the website ID and a token, sent as a Header Auth credential
AI model
Writes the summary and the comparison with suggestions.
NeedsOpenRouter API key, sent as a Header Auth credential
Notes table
Keeps each week’s notes as a row.
NeedsBaserow credential, and a table with the fields Date, Summary, Pages and Site
Checked by Mindket on 13 Nov 2026
This n8n workflow turns a week of website traffic into a written report. Each week it reads your site’s figures from Umami, the web analytics tool, and asks an AI model on OpenRouter for a summary table. It then reads the top pages of this week and last week, and asks the model to compare them and suggest five changes. Both answers are saved as one row in a Baserow table. Thirteen nodes do the work, beside six sticky notes.
Site owners, bloggers and SEO freelancers who run Umami and want a written view of the week without opening the dashboard. Skip it if you do not use Umami. The workflow reads one site, and a run saves one row.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Publishing | Bloggers | Keep a weekly note on which posts gained or lost readers | A blogger sees that a post on bread starters moved from 12 to 30 visitors and writes a follow-up. |
| Marketing | SEO freelancers | Send clients a written weekly traffic note | A freelancer pastes the new row for a client’s site into the monthly report. |
| Ecommerce | Shop owners | Watch which product and category pages draw visitors | A shop owner sees a category page lose half its visitors and checks its links. |
| Education | Course teams | Track which lessons students read | A course team sees that the setup lesson has the most readers and moves it to the top of the menu. |
You need some n8n: import a file, add two Header Auth credentials and a Baserow credential, and fill in three names.
Any n8n that can reach your Umami server, OpenRouter and Baserow will run it.
https://api.umami.is/v1 as the API address and your API key as the tokenDownload saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. You need an Umami site with its ID, a token for Umami, an OpenRouter key and a Baserow table.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own |
| Umami | Your site, its API address, its website ID and a token |
| OpenRouter | An API key, and some credit for the paid model that the file names |
| Baserow | An account and a table with the fields Date, Summary, Pages and Site |
workflow.json./api/auth/login on your Umami server, with a JSON body that holds your username and password. The answer holds a token.Site to check, replace YOUR_UMAMI_HOST with the address of your Umami server and keep /api at the end. Replace YOUR_WEBSITE_ID with the website ID and YOUR_SITE_NAME with a name for the site.Get view stats from Umami, add a Header Auth credential with the name Authorization and the value Bearer, a space and your token. Select the same credential in Get page data from Umami and Get page view data from Umami.Send data to A.I., add a second Header Auth credential with the name Authorization and the value Bearer, a space and your OpenRouter API key. Select it in Send data to A.I.1 too.Save data to Baserow, add a Baserow credential, then pick your database and your table.Schedule Trigger runs it every week.Once the workflow is on, it runs by itself. Schedule Trigger starts it every Thursday at midnight, in the timezone of your n8n. Press Test workflow for an extra run at any time. Each run adds one row. The figures cover the last 7 days, counted back from the moment of the run.
| To change | Where |
|---|---|
| The site | The three values in Site to check |
| The day and the time | The rule in Schedule Trigger |
| The length of the period | The number of days in the addresses of the three Umami nodes |
| The number of pages | limit=20 in the two page nodes |
| The questions to the AI | The text in the two Send data to A.I. nodes |
| The model | The model name in the JSON body of both AI nodes |
| The columns | The four values in Row for Baserow |
A blogger runs Umami for a bread-baking blog.
On Thursday at midnight the workflow reads the week. Page views are 120 against 100 the week before, and visitors are 50 against 60. The model writes a table of the five figures. The two page lists show that the home page kept its readers and that a new post on starters appeared. The model compares them and suggests five changes, such as linking the new post from the home page. Later the blogger opens Baserow and reads one row with both notes. Check the suggestions before you act on them, because they come from a model.
If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. Umami counts the visits to your website. Baserow is an online table, a little like a spreadsheet. This workflow asks Umami for the week’s numbers, has an AI describe them and files the descriptions in the table. Press Test workflow before you turn on the schedule.
For experts. The model sees plain text lines, not the raw answers, and the compare step needs both page lists before it runs.
| Node | What it does | What to know |
|---|---|---|
Get view stats from Umami | Reads the figures of the last 7 days | The answer of the stats route holds the figures and a comparison object for the 7 days before |
Parse Umami data | Turns the figures into text lines | It also reads the older shape, a number and a prev value for each figure |
Get page data from Umami | Reads the top 20 pages of this week | Always Output Data is on, so a week with no pages still moves on |
Get page view data from Umami | Reads the top 20 pages of last week | The number for each page counts distinct sessions |
Send data to A.I.1 | Compares the two weeks | It takes this week’s lines from Parse Umami data1 |
Row for Baserow | Names four values: Date, Summary, Pages and Site | Baserow matches them to the table’s fields by name |
The original copy asked Umami for the wrong figures, used a model name that is gone and sent its prompts as percent codes.
event-data/stats, which answers about custom events, and then read page views and visitors from it. This copy calls stats, which gives page views, visitors, visits, bounces and total timetype=url and a tz setting. Umami’s source, read on 12 November 2026, lists path among the metric types and has no url, so this copy uses type=path. It asks for the top 20 pages, where Umami’s own default is 500, to keep the question shortcomparison object holds the 7 days before. It also reads the older shape with value and prevencodeURIComponent, so the model read percent codes. This copy sends plain text linesmeta-llama/llama-3.1-70b-instruct:free. OpenRouter’s public model list, read on 12 November 2026, does not list that name. It lists meta-llama/llama-3.1-70b-instruct at about 0.72 US dollars per million tokens, and this copy uses it. For no bill, name a free model from the same list, such as google/gemma-4-31b-it:free, which has usage limitsAn n8n workflow that turns a week of website traffic into a written report. Each week it reads your site's figures from
Umami and asks an AI model on OpenRouter for a summary table. It then reads the top pages of this week and last week and
asks the model to compare them and suggest five changes. Both answers are saved as one row in a Baserow table.
workflow.json: the workflow as n8n exports it, 13 nodes and six sticky notes. It holds no credential.README.md: these notes.Get view stats from Umami called event-data/stats, the route for custom events, and the code then looked for pagestats, which gives page views, visitors, visits, bounces andtype=url and sent a tz setting. Umami's source, read on 12 November 2026, lists pathurl, so both nodes now use type=path. They also ask for a short list of pages. Umami's own default is 500, which makes a long question. The time zone setting was not needed and is gone.Parse Umami data read each figure as a value and a prev pair. Umami's current answer holds each figure as acomparison object. The code reads both shapes.encodeURIComponent, so the model received percent codes. The code nodesJSON.stringify.meta-llama/llama-3.1-70b-instruct:free. OpenRouter's public model list, read on 12 Novembermeta-llama/llama-3.1-70b-instruct, so this copy uses it.Site to check, holds the Umami address, the website ID and the site name once. The original copy typedRow for Baserow, names the four values Date, Summary, Pages and Site, and Save data to Baserow maps themhttps://api.umami.is/v1 and the token is an API key.workflow.json./api/auth/login on your Umami server, with a JSON body that holds your usernamepassword. The answer holds a token.Site to check, replace YOUR_UMAMI_HOST with the address of your Umami server and keep /api at the end. ReplaceYOUR_WEBSITE_ID with the website ID and YOUR_SITE_NAME with a name for the site.Get view stats from Umami, add a Header Auth credential with the name Authorization and the value Bearer, a spaceGet page data from Umami and Get page view data from Umami.Send data to A.I., add a second Header Auth credential with the name Authorization and the value Bearer, a spaceSend data to A.I.1 too.Save data to Baserow, add a Baserow credential with your Baserow address, email and password. Then pick yourSchedule Trigger runs it every week.Schedule Trigger starts the run by itself. Its rule is weekly on Thursday, and the hour and minute keep n8n'sWhen clicking ‘Test workflow’ starts it by hand.Site to check passes on the three values.Get view stats from Umami reads the figures of the last 7 days.Parse Umami data turns them into text lines, each with the figure for the last 7 days and the 7 days before.Send data to A.I. asks OpenRouter for a summary table and two or three observations.Get page data from Umami reads the top 20 pages of the last 7 days, and Parse Umami data1 turns them into lines.Get page view data from Umami reads the top pages of the 7 days before, and Parse Umami turns them into lines.Send data to A.I.1 sends both lists and asks for a comparison table and five suggestions.Row for Baserow takes the date, the first answer, the second answer and the site name.Save data to Baserow adds them as a new row.Site to check.Schedule Trigger.limit=20 in the two page nodes.model name in the JSON body of both AI nodes. Any model on OpenRouter's list works.Row for Baserow. Their names must match the table's fields.meta-llama/llama-3.1-70b-instruct, costs 0.00000072 US dollars per token for the prompt and the same for the answer on that list, which is about 0.72 US dollars per million tokens. Two calls a week are a small bill. For no bill, name a free model from the same list, such as google/gemma-4-31b-it:free. FreeNOTICE.md 654 B README.md 7 KB workflow.json 14 KB
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
op7418 · Skill
Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…
alirezarezvani · Skill
Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…
nerijs · Kit
A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…
LiconStudio · Kit
Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…
nhathoangfoto · Kit
A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…