Fees
Data license: CC-BY-4.0 · Data source: bankproducts.info
3 rows where product_id = "ig:trading_account" sorted by amount descending
This data as json, CSV (advanced)
Suggested facets: currency, frequency, valid_from (date)
| id | product_id | bank_id | fee_type | label | amount ▲ | currency | frequency | tier | channel | note | source_page | valid_from | access_tier |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ig:trading_account:fx_conversion | IG Trading Account ig:trading_account | IG Bank S.A. ig | fx_markup | Standard FX conversion fee | 0.7 | percent | per_txn | Captured from ig.com/uk Help page (consistent across IG entities). Multiplier 1.007 applied to mid-rate. Charged on instant or daily-batched basis depending on account setting. | 2026-06-01 | free | |||
| ig:trading_account:inactivity | IG Trading Account ig:trading_account | IG Bank S.A. ig | inactivity_fee | Inactivity fee | GBP | monthly | IG historical published rate: GBP 12 per month after 24 months without activity (per ig.com/uk help). Swiss-specific value not verified due to Cloudflare gate. | 2026-06-01 | free | ||||
| ig:trading_account:funding_card | IG Trading Account ig:trading_account | IG Bank S.A. ig | load_fee | Card deposit fee | percent | per_txn | Industry-standard for IG: bank transfers free; card deposits up to 1.5%. Swiss-specific value not verified. | 2026-06-01 | free |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE fee (
id TEXT PRIMARY KEY, -- zkb:privatkonto:account_mgmt
product_id TEXT NOT NULL REFERENCES product(id),
bank_id TEXT NOT NULL REFERENCES bank(id), -- denormalized
fee_type TEXT NOT NULL, -- standardized key
label TEXT, -- human-readable German label from PDF
amount REAL, -- NULL if text-only or varies
currency TEXT DEFAULT 'CHF', -- CHF, EUR, USD, percent
frequency TEXT, -- monthly, annual, quarterly, per_txn, one_time, per_annum_pct
tier TEXT, -- for tiered pricing: "3rd card onwards", "vol:>250k", "member"
channel TEXT, -- ebanking, paper, counter, atm, app, post_office, all
note TEXT, -- conditions, fine print
source_page INTEGER,
valid_from TEXT,
access_tier TEXT NOT NULL DEFAULT 'free' -- freemium gating; propagated from parent product
CHECK (access_tier IN ('free', 'pro', 'business'))
);
CREATE INDEX idx_fee_product ON fee(product_id);
CREATE INDEX idx_fee_bank ON fee(bank_id);
CREATE INDEX idx_fee_type ON fee(fee_type);
CREATE INDEX idx_fee_category ON fee(fee_type, bank_id);
CREATE INDEX idx_fee_access_tier ON fee(access_tier);