Last updated: August 31, 2026
By Mike Carter, Director of Partnership Success, KORE1
An analytics engineer builds and owns the tested, version-controlled data models a company reports on, while a data analyst uses those models to answer business questions. Both write SQL all day. Only one of them ships code other people depend on. That single difference sets the pay band, the interview loop, and how long your req sits open. Tool lists will not tell you which one you need. The review process around the work will.
A director of analytics at a subscription healthcare company in Costa Mesa sent me a req last spring. Title on it said Senior Data Analyst. The band underneath ran $110,000 to $125,000, and beneath that sat fourteen bullets describing the work. I counted them twice.
Nine of those bullets described a different job. Own the dbt project. Write tests. Work in git, submit pull requests, review other people’s models. Hold the semantic layer in Looker so the revenue number stops changing depending on who pulls it.
The req had been open 97 days. The internal recruiter had screened somewhere north of forty people and passed on most of them for being “too junior,” which was not what was happening. They were data analysts. Good ones. Every one. They were being measured against a job the title had never advertised.
Take my bias into account before you weigh anything below. KORE1 staffs both of these roles and the analytics engineer costs more, so I earn more when you decide you need the expensive one. There is a section further down where I argue that a lot of you should hire the analyst instead. Read that one twice.
If you already know which seat you are filling, our analytics engineer staffing and data analyst staffing practices cover how each search runs, and the broader data analytics staffing desk covers everything around them. This post is about the part before that, when the title at the top of the req is still up for grabs and is quietly about to cost you a quarter.

The Difference Is Whether Anyone Reviews the Work
An analytics engineer transforms raw warehouse data into documented, tested models that everyone else builds on, working the way a software engineer does: source control, code review, automated tests, and a deploy pipeline. A data analyst starts from those models and produces an answer, a forecast, or a dashboard aimed at one business decision.
Read that back and notice what is missing. No SQL skill. No BI tool.
The analyst’s output is a conclusion. It gets checked by whether the business agrees with it, and then it is done. The analytics engineer’s output is a dependency. Forty dashboards and six people read from it, so it gets checked by a second engineer before it merges, then by a test suite every time it runs, then by whoever notices at 8 a.m. that the number moved and nobody said why.
dbt Labs, which more or less invented the job title, defines the role by exactly those practices: data modeling, source control, and CI/CD. Not by the queries.
Here is the practical version of that. Ask a candidate what happens between finishing a piece of SQL and other people using it. An analytics engineer will describe a process, and the process will have other humans in it. An analyst will describe sharing the result. Neither answer is wrong. They are answers to two different jobs, and about nine times out of ten that one question sorts the resume pile faster than the whole technical screen does.
AI Writes the Query Now. Somebody Still Has to Own It
Three years ago you could screen for this with SQL. Window functions, a nasty join, a query plan question. It worked because writing good SQL was genuinely hard and genuinely rare.
It is neither now. Not remotely.
The 2026 State of Analytics Engineering Report from dbt Labs surveyed 363 data practitioners and leaders between December 2025 and February 2026, roughly three quarters of them individual contributors. Seventy-two percent said AI-assisted coding is a priority in how they develop. In the same survey, 71% said they were worried about hallucinated or incorrect data reaching stakeholders.
Those two numbers are the entire 2026 hiring argument, sitting next to each other in one report. Read them together.
Everybody’s SQL got better. Everybody’s confidence in the output got worse. When the writing is cheap, the value moves to the review, and reviewing a model you did not write, against tests you have to design yourself, catching the join that silently doubled a revenue row, is a skill that has nothing to do with typing speed and does not come free with an AI subscription.
SQL itself is now the most common tool in the building. Stack Overflow’s 2025 Developer Survey put SQL usage at 58.6% across all respondents, ahead of most programming languages. A commodity skill cannot be your differentiator. Screen for it, sure. Do not decide on it.
What I tell clients: if your candidate cannot explain how they would catch a wrong number before a VP sees it, the title on the req does not matter. You are hiring an analyst either way.

What They Cost, and Why the Gap Widens as You Go Up
Same years of experience, same city, same stack. Different money. The spread is not small, it is not consistent across levels, and it moves enough by market that a band you set from a national average in January will be wrong by summer in either direction. Budgeting for this is genuinely painful.
| Level | Data Analyst (base) | Analytics Engineer (base) | What the premium buys |
|---|---|---|---|
| Entry, 0 to 2 years | $58,000 to $75,000 | $95,000 to $120,000 | Someone whose SQL is already reviewable by a senior |
| Mid, 3 to 5 years | $78,000 to $108,000 | $115,000 to $155,000 | One domain owned end to end, tests included |
| Senior, 6 to 9 years | $112,000 to $145,000 | $155,000 to $200,000 | Modeling standards other people have to follow |
| Lead or staff, 10+ years | $140,000 to $185,000 | $195,000 to $245,000 | Architecture across teams, usually your first AE hire |
Those are the bands we actually place against, drawn from our own data analyst salary guide and the analytics engineering side of the desk. National base, before equity and before any Bay Area or NYC adjustment.
Notice the shape. At entry the two bands sit about $37,000 to $45,000 apart. At lead the gap runs $55,000 to $60,000, and it keeps opening. Seniority in analytics gets you a better analyst. Seniority in analytics engineering gets you someone whose decisions constrain a dozen other people, and that is priced like the architecture job it is.
Federal data says the same thing from a completely different angle. There is no federal occupation code called “analytics engineer,” so the work lands in two different buckets. Operations research analysts, where most data analyst work sits, show a 2025 median of $88,940 and about 9,600 projected openings a year. Database architects, the closest federal match for the modeling and ownership half of analytics engineering, show a 2025 median of $139,500 against roughly 4,000 openings a year.
Higher pay, and fewer than half as many openings flowing through the market each year. That second number is the one that should change your timeline, not your budget. Most hiring managers do the opposite, stretching the band by fifteen thousand dollars and keeping a six-week deadline that was never achievable at any price, and then concluding the market is broken.
The Promotion That Fails More Often Than It Works
Every client eventually asks the same thing. We have a great senior analyst. Can we just move them into this?
Sometimes. Not on your schedule.
The reason it fails is almost never SQL. Your senior analyst writes better SQL than half the analytics engineers on the market, and everyone on the team knows it. What is missing is the working practice around the SQL: branching, opening a pull request and having it sent back, writing a test that fails on purpose before it passes, thinking about how a model breaks eleven months from now when a source column quietly changes type. None of that is intellectually hard. All of it is a habit, and habits take a couple of quarters, not a couple of weeks.
We watched a fintech in Irvine try this with a genuinely excellent analyst. Six weeks in, the models worked. Nobody could read them. There were no tests, because nothing in five years of that career had ever required one, and nobody on the team was qualified to send a pull request back with comments. By month four the same revenue model had been rebuilt three times and our candidate was taking recruiter calls. The company hired externally in the end and kept their analyst in the analyst seat, which is where the role belonged.
The promotion works under three conditions, and none of the three is optional:
- Someone already on staff can review the code and will actually push back. A data engineer counts. A sympathetic manager does not.
- One domain, not the whole warehouse. Finance, or the product tables. Not both.
- Two quarters before you judge it, with the old analyst workload explicitly taken away. Nobody learns a review culture on nights and weekends.
Miss one of the three. You have converted a productive analyst into an unproductive engineer, which costs more than the salary difference you were trying to avoid.

Same SQL Question, Different Second Question
Most teams run one technical screen for both roles, score it on the same rubric, and then wonder why two finalists who tested identically turn out to be suited to completely different jobs once they start. The first question can be identical. What you ask next is where the roles separate.
Give both candidates the same moderately ugly query problem. Multi-table join, some date logic, a window function. Watch them solve it. Then, for the analyst, ask what they would tell the business if the result came back surprising, and whether they would trust it. You are testing judgment about the answer.
For the analytics engineer, take their working query and ask three completely different questions. How would you test this? What happens when the upstream table changes shape and nobody tells you? Walk me through the review comments you would expect to get on this.
That third one is the whole screen. Honestly. Strong analytics engineers light up. They have opinions about their own code and they have been humbled by a reviewer before. Candidates who have only ever worked alone go quiet, and that silence is telling you something a take-home never will.
Two more things worth stealing. Ask for a model they are not proud of and what they would change now, because analysts tend to answer with a wrong conclusion and engineers answer with a structural mistake. And skip the whiteboard entirely for both roles. Nobody in either job has written SQL without an editor since 2019, and screening on it selects for interview practice rather than the work.
Which Req Goes First
Three situations cover most of what comes across my desk. Maybe four.
The warehouse is fine and nobody trusts the numbers. Data lands in Snowflake or BigQuery on schedule, Fivetran is doing its job, and yet finance and marketing show up to the same meeting with different revenue figures and the argument eats the first twenty minutes. Analytics engineer. You do not have an analysis problem, you have an ownership problem, and hiring a fourth analyst into it makes the disagreement louder rather than shorter. The analytics engineer hiring guide covers how that search runs.
The models are clean and the questions are piling up. Somebody already built the semantic layer, the tests are green, and the actual bottleneck is a queue of business questions nobody has time to answer. Hire the analyst. Two if the queue is long. The data analyst hiring guide walks the screen, and our salary benchmark tool will get you a band for your metro before you post anything.
You have neither, and one head to spend. Hire the analyst. This is the answer most vendors will not give you and I lose money saying it. A company with no warehouse maturity gets more from someone who can answer questions today than from someone building a model layer that has nothing to sit on yet, and you will know within two quarters whether the analyst’s backlog has grown into the analytics engineering problem. It usually does. It is a much easier req to write once it has.
One caveat on all three. If your actual complaint is that data does not arrive at all, or arrives eight hours late, neither of these people fixes it. That is a pipeline job, and the data engineer comparison is the one you want instead. Same confusion further upstream, and it is the more expensive version of this mistake.
What Comes Up on These Searches
Is an analytics engineer just a data analyst who learned dbt?
Wrong direction, slightly. dbt is the tool that made the role visible, but the job is software practice applied to analytics: version control, peer review, tests, and deployment discipline. Plenty of people know dbt and still work alone with no review, and they screen as analysts because functionally that is what they are.
We already run Snowflake and Looker. Does that settle it?
It does not. Your stack tells me what the work will be built with, not whether anyone owns it. The tell is whether two people can pull the same metric and get the same number. If they cannot, no amount of platform licensing fixes that, because the missing thing is a person with a definition and the authority to enforce it.
Which one fills faster?
The analyst, by a wide margin. Mid-level data analyst searches close in about 18 days for us against a 17-day average across our IT desk. Analytics engineering runs longer and it is a supply problem, not a screening one. Federal projections put barely 4,000 database architect openings a year in play nationally against 9,600 on the analyst side, and the people who do the job well are rarely looking.
Can one person cover both?
Short answer: under about 40 employees, yes, and it is often the right call. The seat is usually titled analytics engineer, paid at that band, and most of the week goes to answering questions anyway. It stops working the moment a second analyst joins, because now your one engineer is a bottleneck and a helpdesk simultaneously, and that person leaves within a year.
What does getting the title wrong actually cost?
Figure a quarter of lost time before anyone notices, which is the real bill. The Costa Mesa req at the top ran 97 days before the title changed, and it filled in five weeks after. Salary was never the problem. The band was right for the work. Every applicant it attracted was answering a different job posting.
Contract or direct hire for the first analytics engineer?
Direct hire, if you can only pick one. This role’s whole value is standards other people follow for years, and a contractor has no reason to optimize for the year after they leave. Contract staffing earns its keep on the analyst side, where the work is project-shaped, and on a second or third analytics engineer once somebody senior is already setting the pattern.
Where This Usually Lands
Most companies I talk to have already decided which role they want and are looking for permission. Fine by me. Run one check before you post it, because it takes about ten minutes and it is the only part of this whole process that is free.
Take your req and cross out every bullet about tools. Whatever survives is the actual job. If what is left describes answering questions, you want an analyst and you should stop paying attention to the dbt line item somebody added. If what is left describes owning something other people depend on, you want an analytics engineer, and the band on the req probably needs to move before anyone qualified applies.
We have been running technical searches out of Orange County since 2005, across 30-plus U.S. metros, and the mistitled data req is one of the two or three most expensive habits we see. It is also one of the cheapest to fix, because it costs an afternoon with the hiring manager and a rewrite.
If you want a second read on a req before it goes live, or a band for your market, talk to our team. Bring the version with the fourteen bullets. Those are the interesting ones.
And if you are still deciding between the analyst titles themselves, the BI analyst and data analyst comparison covers the other fork in that road.

