Wells Fargo Data Analytics Interview Questions & Answers
Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.
About Wells Fargo hiring for Data Analytics roles
Wells Fargo is a large US bank offering consumer banking, commercial banking, corporate and investment banking and wealth management. Its India centres in Hyderabad, Bengaluru and Chennai support technology, operations, analytics and risk. It hires for software engineers, testers, data analysts, data engineers and risk analysts.
For Data Analytics roles, this Wells Fargo practice set focuses most on Tableau (6), Excel (5), Python for Analysis (5), Data Cleaning (5). It has 8 easy, 31 medium, 1 hard questions, so you can start easy and work up to the harder ones.
Company type
Banking & finance
Headquarters
San Francisco, California, USA
Main India offices
Hyderabad, Bengaluru, Chennai
Wells Fargo Data Analytics interview process
Online assessment (aptitude + technical)
Technical round
Managerial round
HR round
Typical pattern based on public candidate experiences. Rounds vary by role, team and year.
Solved for Wells FargoStart practicing
3 QUESTIONS FREESign up to unlock the full question bank and track your progress.Unlock every question and answer, then continue practising company-wise and package-wise.
✓ 3 questions free • Unlock the rest in seconds
01
You share a forecasting workbook and users keep overwriting formulas. How do you protect it?
Separate input cells from calculation cells and colour inputs clearly. Unlock only the input cells through Format Cells, Protection, then protect the sheet so formulas cannot be edited, and optionally hide formulas. Add data validation on inputs to block wrong values such as negative quantities. Protect workbook structure so sheets cannot be deleted, keep a version history, and add a short instructions sheet so users know where to type.
02
Write an Excel formula to look up a price using two criteria, product and city.
=XLOOKUP(1, (A2:A500=G2) * (B2:B500=H2), C2:C500, "Not found")
-- A = product, B = city, C = price
-- G2 and H2 hold the product and city to find
-- each condition returns TRUE/FALSE; multiplying gives 1 only where both match
Visually with a box plot, with the IQR rule (below Q1 − 1.5×IQR or above Q3 + 1.5×IQR) or a z-score above 3. Then decide with the business whether to cap, remove or keep them.
A lambda is a small anonymous function written in one line, for example lambda x: x * 1.18 to add GST. Analysts use lambdas with sorted for custom sort keys, with pandas assign for computed columns, for example assign(margin=lambda d: d.profit / d.sales), and occasionally with apply. For anything longer than one expression or reused in several places, a normal def function is clearer and easier to test.
09
Write Excel formulas to get a sorted list of unique customer names and their count.
-- unique customers from column B, sorted A to Z
=SORT(UNIQUE(B2:B1000))
-- number of unique customers
=COUNTA(UNIQUE(B2:B1000))
-- unique customers sorted by total sales, highest first
=SORTBY(UNIQUE(B2:B1000), SUMIFS(D2:D1000, B2:B1000, UNIQUE(B2:B1000)), -1)
10
What are leading and lagging indicators? Give examples.
Lagging indicators report outcomes that have already happened, such as monthly revenue, profit or churn; they are accurate but too late to change. Leading indicators move earlier and predict outcomes, such as qualified leads, demo bookings, cart additions or support ticket backlog. A sales dashboard should pair them: pipeline coverage today signals revenue next quarter. Leading indicators need validation that they really predict the lagging result.
11
Why would you publish a Tableau data source separately instead of embedding it in each workbook?
A published data source lives on Tableau Server or Cloud and can be reused by many workbooks. Calculations, joins, field names and extract refresh schedules are defined once, so every report uses the same revenue logic and the database is queried once per refresh instead of once per workbook. You can certify it and set permissions. Embedded sources are fine for a quick personal analysis but drift over time.
12
How do you split a full name column into first and last name in Excel?
-- A2 = 'Priya Ramesh Iyer'
-- first name
=TEXTBEFORE(TRIM(A2), " ")
-- last name (text after the last space)
=TEXTAFTER(TRIM(A2), " ", -1)
-- older Excel: first name
=LEFT(TRIM(A2), FIND(" ", TRIM(A2)&" ")-1)
-- or use Data > Text to Columns or Flash Fill (Ctrl+E) for a one-off task
13
Write a Tableau table calculation for year-over-year sales growth.
// with YEAR(Order Date) in the view, Compute Using: Table (across)
(ZN(SUM([Sales])) - LOOKUP(ZN(SUM([Sales])), -1))
/ ABS(LOOKUP(ZN(SUM([Sales])), -1))
// the built-in Quick Table Calculation 'Year over Year Growth' generates similar logic
// format the field as a percentage
This is an encoding mismatch: a UTF-8 file was read as a different encoding such as Latin-1 or Windows-1252. Re-read it with the right encoding, for example pd.read_csv(path, encoding='utf-8') or 'utf-8-sig' for files with a byte order mark, or set the file origin in Excel and Power Query import. Avoid re-saving through tools that change encoding, and agree on UTF-8 for all exchanges, especially for Hindi or other Indian language text.
15
Write SQL to calculate open rate and click-through rate for each email campaign.
SELECT
s.campaign_id,
COUNT(DISTINCT s.user_id) AS delivered,
COUNT(DISTINCT o.user_id) AS opened,
COUNT(DISTINCT c.user_id) AS clicked,
ROUND(100.0 * COUNT(DISTINCT o.user_id) / COUNT(DISTINCT s.user_id), 1) AS open_rate,
ROUND(100.0 * COUNT(DISTINCT c.user_id) / COUNT(DISTINCT s.user_id), 1) AS ctr
FROM email_sends s
LEFT JOIN email_opens o ON o.campaign_id = s.campaign_id AND o.user_id = s.user_id
LEFT JOIN email_clicks c ON c.campaign_id = s.campaign_id AND c.user_id = s.user_id
WHERE s.status = 'delivered'
GROUP BY s.campaign_id;
16
Your pandas script shows SettingWithCopyWarning and a new column does not update. What is happening and how do you fix it?
It warns that you may be modifying a temporary copy of a slice, so the change might not reach the original DataFrame, for example df[df.sales > 0]['flag'] = 1. Avoid it by using a single loc call, df.loc[df.sales > 0, 'flag'] = 1, or by calling .copy() when you intentionally create a new subset. Newer pandas versions with copy-on-write make behaviour more predictable, but clear loc assignments remain best practice.
17
Tell me about a time requirements kept changing on a report you were building.
Situation: a sales head kept adding new metrics while I was building a Power BI report. Task: deliver on time without endless rework. Action: I wrote a one-page scope with the agreed KPIs, shared a rough mock-up first, and logged new asks in a backlog with effort estimates. We agreed phase one and phase two. Result: phase one went live on schedule, and later requests were planned instead of disrupting the work.
Use a star schema, remove unused columns, prefer measures, reduce visuals per page, limit high-cardinality fields and use aggregations or incremental refresh.
19
How do cookie restrictions, consent rules and server-side tagging affect web analytics data in 2026?
Browser tracking prevention, ad blockers and consent banners mean many visits are not fully tracked, so analytics undercounts users and conversions and breaks multi-session journeys. Under India's DPDP Act and similar laws, you need valid consent for non-essential tracking. Teams respond with consent mode modelling, first-party and server-side tagging, logged-in user IDs and reconciling analytics with backend orders, and they treat analytics numbers as estimates rather than exact counts.
20
Write a DAX measure for cumulative sales from the start of the data to the selected date.
Cumulative Sales =
VAR maxDate = MAX('Date'[Date])
RETURN
CALCULATE(
[Total Sales],
FILTER(ALL('Date'[Date]), 'Date'[Date] <= maxDate)
)
-- for a running total that resets each year use TOTALYTD([Total Sales], 'Date'[Date])
21
What is a holdout group and why do teams keep one?
A holdout group is a small share of users, often 5-10%, kept out of a feature or of all marketing campaigns for a long time. Comparing them with everyone else shows the cumulative long-term impact, which individual short tests miss, and checks whether many small wins really add up. For example, a notification holdout shows whether push messages raise monthly retention or just shift activity earlier.
22
What is the Central Limit Theorem and why does it matter for analysts?
The Central Limit Theorem says that the distribution of sample means approaches a normal distribution as sample size grows, usually from about 30 observations, even if the underlying data is skewed. This is why we can use z-tests, t-tests and confidence intervals for averages such as order value or session time. It does not make the raw data normal, and very heavy-tailed data may need larger samples.
23
How do you create a dual-axis chart in Tableau, for example sales bars with a profit margin line?
Drag Order Date to Columns as a continuous or discrete month, put Sales on Rows, then drag Profit Ratio to Rows next to it. Right-click the second pill and choose Dual Axis. On the Marks card set Sales to Bar and Profit Ratio to Line. Decide whether to synchronise axes: do not synchronise when units differ, like rupees and percentage. Label the axes clearly so readers know which is which.
A conformed dimension is one dimension table with the same keys, attributes and meanings shared by several fact tables. For example, one date and one product dimension used by sales, returns and inventory facts. Because they conform, you can compare sales and returns by the same product category in one report without mismatched definitions. Conformed dimensions are the main way an enterprise warehouse stays consistent across departments.
25
What types of dashboard actions does Tableau offer?
Filter actions filter other sheets when a user selects or hovers on a mark, such as clicking a region to filter a product table. Highlight actions emphasise related marks without removing others. URL actions open a web page with field values in the link. Go to Sheet navigates to another dashboard. Parameter and set actions update a parameter or set based on selection, enabling advanced interactions like dynamic drill-downs and comparisons.
Sampling bias occurs when the sample does not represent the population, so conclusions do not generalise. Common types: selection bias, such as surveying only app users about website issues; survivorship bias, studying only customers who stayed; non-response bias, when unhappy customers skip surveys; and convenience sampling, using whoever is easiest to reach. Random sampling, stratification and weighting help reduce it.
27
Write an Excel formula to put invoices into ageing buckets (0-30, 31-60, 61-90, 90+ days).
-- C2 = invoice date, TODAY() = as-of date
=LET(age, TODAY()-C2,
IFS(age<=30, "0-30",
age<=60, "31-60",
age<=90, "61-90",
TRUE, "90+"))
-- then a PivotTable with bucket in rows and SUM of amount gives the ageing report
28
How do you unpivot a wide monthly sales sheet into a long table in Power Query?
Load the table into Power Query. Select the identifier columns such as Region and Product, then choose Transform, Unpivot Other Columns. The month columns become two columns, Attribute and Value; rename them Month and Sales. Change Month to a date type and Sales to a decimal number. Using Unpivot Other Columns rather than Unpivot Columns means new months added later are picked up automatically on refresh.
29
Write pandas code to find the top 2 products by revenue in each region.
// Profit Ratio (aggregate first, then divide)
SUM([Profit]) / SUM([Sales])
// Profit Category
IF SUM([Profit]) < 0 THEN 'Loss'
ELSEIF [Profit Ratio] < 0.1 THEN 'Low margin'
ELSE 'Healthy'
END
// avoid AVG([Profit]/[Sales]): it averages row ratios and gives a wrong total
31
Orders arrive in the warehouse with customer IDs that do not exist yet in the customer dimension. What do you do?
These are late-arriving dimensions. Do not drop the orders, or revenue will be understated. Common practice is to insert a placeholder customer row with the natural key and 'Unknown' attributes, link the order to it, and update that row when full details arrive. Alternatively map to a single Unknown member with key -1. Also monitor how many such rows appear daily, because a spike usually means a broken feed.
32
Your event logs store timestamps in UTC, but the business reports daily sales in IST, and late-night orders land on the wrong day. How do you fix it?
Convert timestamps to the business time zone before deriving the date. IST is UTC plus 5 hours 30 minutes, so an order at 20:00 UTC belongs to the next day in IST. In SQL use AT TIME ZONE or CONVERT_TZ, and in pandas use tz_localize('UTC') followed by tz_convert('Asia/Kolkata'). Store raw UTC, add a local date column in the model, and document which one each report uses.
33
Write SQL to flag rows that fail basic validation rules in a customer table.
SELECT customer_id,
CASE WHEN email IS NULL OR email NOT LIKE '%_@_%._%' THEN 1 ELSE 0 END AS bad_email,
CASE WHEN LENGTH(pincode) <> 6 THEN 1 ELSE 0 END AS bad_pincode,
CASE WHEN signup_date > CURRENT_DATE THEN 1 ELSE 0 END AS future_signup,
CASE WHEN age NOT BETWEEN 18 AND 100 THEN 1 ELSE 0 END AS bad_age
FROM customers;
-- sum each flag to report the error rate per rule
34
What is DAX and how does it differ from Excel formulas?
Extract filters decide which rows go into the extract file at all, which reduces its size and speeds every view; filtered rows are simply not available. Data source filters apply to all worksheets using that data source, for live or extract, and are useful for security or scope, such as only the India business. Both act before context filters. Normal worksheet filters only affect one sheet.
A natural key comes from the source system and has business meaning, such as a customer mobile number or product SKU. A surrogate key is a meaningless integer or hash generated in the warehouse. Surrogate keys protect the model when source keys change, get reused or clash across systems, and they are essential for slowly changing dimensions where one customer has several historical rows. Keep the natural key as an attribute for lookups.
Check data pipelines first, then segment by channel, region, product and device, compare to the same period last year, and look for launches, outages or campaigns.
40
Your NOT IN query unexpectedly returns zero rows. Why might that happen, and how do EXISTS and IN differ?
IN checks whether a value is in a list or subquery result; EXISTS checks whether a subquery returns at least one row and stops at the first match. Results are the same in most cases, and modern optimisers often run them similarly. The big difference is NOT IN with NULLs: if the subquery returns any NULL, NOT IN returns no rows. NOT EXISTS behaves correctly, so prefer it for anti-joins.
Tips to crack the Wells Fargo Data Analytics interview
Learn US banking concepts like mortgages, deposits and regulatory reporting, which many India teams support.
Revise SQL, Python and testing basics for technology and analytics roles, using banking data examples where possible.
Prepare examples about risk awareness and following controls, as compliance is a strong theme at Wells Fargo.
Keep a one-minute story ready for every project on your CV: problem, your part, tools, result.
Practise the hard questions on this page aloud; Wells Fargo interviewers usually ask follow-ups on your first answer.
Frequently asked questions
How many rounds are there in the Wells Fargo Data Analytics interview?
Candidates usually go through 4 stages: Online assessment (aptitude + technical); Technical round; Managerial round; HR round. The exact rounds change with the role, team, location and your experience, so confirm the process with the recruiter.
Which topics should I prepare for the Wells Fargo Data Analytics interview?
This practice set leans on Tableau (6), Excel (5), Python for Analysis (5), Data Cleaning (5). Revise those first, then practise explaining one or two of your own projects end to end, because most Wells Fargo interviewers ask you to walk through real work.
Are these the exact questions asked at Wells Fargo?
No. These are curated practice questions that match the skills and difficulty usually tested in banking & finance interviews like Wells Fargo's. They are not a leaked or verified list of past questions.
Where does Wells Fargo hire Data Analytics professionals in India?
Wells Fargo has large teams in Hyderabad, Bengaluru, Chennai. Openings and locations change often, so check the Wells Fargo careers page and filter by city and experience.